모바일 앱을 개발 중이며 WebView에 내장 된 HTML/CSS/JS에서 대부분의 부품을 처리하려고합니다. HTML/CSS/JS 코드가 로컬 파일 시스템에 있어야하는 동안 앱은 XML 웹 서비스에서 데이터를 가져와야합니다. 그러나 WebKit은 Origin을 로컬 파일에 대해 null로 설정하기 때문에 Ajax 호출에 대해 "동일한 출처 정책"을 적용 할 수 있습니다. 그러나 나는 $ .ajax 매개 변수에서 "xml"대신 "jsonp"로 dataType을 설정하면 Chrome (parserError)에서 호출이 실패하지만 디버거에서 웹 서비스에서 반환 된 데이터를 볼 수 있음을 확인했습니다. 내 질문은 : 그것은 어떻게 든 응답 데이터를받을 때 호출 된 기본 콜백을 무시할 수 있습니까? 그렇지 않다면 무엇을 할 수 있습니까? 웹 서비스를 실행하는 서버에 액세스 할 수 없습니다. 이 문제에 대한 다른 스레드에서 Ajax 호출 작업 대신 페이지로드 요청을하는 것을 읽었습니다. 그러나 그것이 의미하는 바가 무엇인지/어떻게해야하는지 명확하지 않습니다. 나는 이것에 어떤 조명을 주셔서 감사합니다!WebKit의 JS 동일 출처 정책 : 데이터는 여기에 있지만 액세스 방법은 무엇입니까?
0
A
답변
0
JSONP는 Padding이있는 JSON이고 URL (GET 전용)은 <script>
태그로로드되며 JSONP 응답에 실제 JSON이 첫 번째 인수 인 함수 호출이 포함되어 있다고 가정합니다.
Twitter와 같은 대부분의 원격 웹 서비스는 'callback ='GET 매개 변수를 지원합니다. 예 :
GET /my/jsonp/?callback=myFunction
응답 내용은 'JavaScript'파일이어야합니다.
myFunction({"code": 200, "status": "OK"});
JSONP입니다.
관련 문제
- 1. Safari에서 동일 출처 정책 비활성화
- 2. 동일한 출처 정책 javascript
- 3. Jquery .load 같은 출처 정책
- 4. 기본 인증과 충돌하는 동일한 출처 정책?
- 5. 동일 원산지 정책 및 웹 서비스
- 6. Javascript "동일한 출처 정책"위반 표시
- 7. 외부 리소스에 대한 액세스가 필요한 GWT 앱 디버깅 (동일 출처 정책)
- 8. WebKit의 PDFViewSavePDFToDownloadFolder를 재정의하는 방법은 무엇입니까?
- 9. 동일 기원 정책 - AJAX 및 사용하여 공개 API
- 10. 동일한 출처 정책 문제와 같은 공유 SharePoint 웹 서비스 호출
- 11. 크로스 사이트 스크립팅 공격 및 동일한 출처 정책
- 12. Javascript에서 document.domain을 사용하는 동일한 출처 정책 해결 방법
- 13. 반환 데이터는 여기에 관련 코드 안드로이드
- 14. 출처 공유 리소스 공유 (CORS) - 여기에 누락 된 것이 있습니까?
- 15. "동일한 출처 정책"및 Google에서로드 한 스크립트 - 취약한 솔루션입니까?
- 16. 자바 스크립트에서 서버 측 스크립트없이 동일한 출처 정책 사용하기
- 17. scribefire 또는 가장 깊은 발신자가 동일한 출처 정책 제한을 우회하는 방법은 무엇입니까?
- 18. 동일한 출처 정책 제한 (Google지도 API를 쿼리하려고 시도)에 대한 가장 간단한 GWT 해결 방법은 무엇입니까?
- 19. IE6 동일 원산지 정책이란 무엇입니까
- 20. 데이터는
- 21. Webkit의 자동 개요 란 무엇입니까?
- 22. 구글 맵스 자바 스크립트가 "동일 원점 정책"을 우회하는 방법
- 23. 키가있는 JS 객체에 액세스
- 24. 동적으로 ASP.NET 페이지에 JS를 추가하고 여기에 JS
- 25. Noob 여기에 있지만 내 앱을 만들려고합니다.
- 26. Javascript와 동일한 출처 보안 문제
- 27. 외부 JS 파일이 동일한 출처 정책을 우회 할 수 있습니까?
- 28. DOM 액세스 소자 JS
- 29. Webkit의 css3 다중 열 이미지 버그에 대한 해결 방법은 무엇입니까?
- 30. iOS WebKit의 투명한 SVG
그래, 명시적인 서버 측 지원없이 트릭이 작동하지 않는다고 생각합니다. –
불행히도 예, 대부분의 사람들이 보는 다른 옵션은 원격 요청을 수행하는 동일한 도메인에 로컬 '프록시'를 만드는 것입니다. 그러나 웹 사이트 대신 로컬 파일을 실행하고있는 것을 볼 수 있습니다 (올바르게 이해 한 경우). 이것은 옵션이 아닙니다. 어쩌면 별도의 원격 위치에서 JSONP에서 JSON 응답을 래핑하는 프록시 스크립트를 만들지 않는 한 .. – CharlesLeaf
설명해 주셔서 감사합니다! –