2012-10-09 7 views
1

나는 프로젝트 논문을 쓰고 있으며 내 전체 프로젝트를 의심스럽게 만들 수있는 문제를 발견했습니다. 따라서 추가 조치를 취하기 전에 세 번 확인하고 싶습니다.다른 웹 사이트에서 정보 가져 오기

URL1에 javascript 파일이 있습니다. 자바 스크립트 코드는 간단히하기 위해 URL2에서 정보를 검색합니다.

아무리 노력해도 문제가 없으므로 Google 검색을 수행하여 동일한 출처 정책이 이유 일 수 있음을 알았습니다.

다시 묻습니다. 불가능한가요?

+1

그것은 완전히 불가능한 것은 아니지만 URL2 크로스 리소스 공유를 지원해야합니다 : http://en.wikipedia.org/wiki/Cross-origin_resource_sharing – nhahtdh

+0

또는 서버 측에서 정보를 검색 할 수 있습니다. –

+0

@ ChandraSekharWalajapet, 서버 측은 URL1이 URL2에서 정보를 검색하고 자바 스크립트로 구문 분석한다는 것을 의미합니다. 그렇다면 지금은 옵션이 아닙니다. 내 상사에게 먼저 물어 보겠습니다. – RedHotScalability

답변

0

이것은 완전히 가능하지만 몇 가지 제한이 있습니다.

URL2가 JSONP 방식을 제공하는 경우 URL1에서 URL2의 정보에 액세스 할 수 있습니다. JSON이 지정된 함수 (이 경우에는 mycallback)에 저장되는 js 파일 (url2/information? id = 123 & callback = mycallback)을로드하는 스크립트 태그를 생성합니다. URL2의 스크립트는 다음과 같습니다.

mycallback({"json":"information"}); 

따라서, URL1는 정의 mycallback 기능을 필요로하고 크로스 도메인을 갈 수 XMLHttpRequest Level2을 활용하는 다른 접근 방법이 될 것이다 URL2

에서 정보를 얻을 것이다.

또 하나는 onmessage/postmessage를 통해 통신하고 URL1 페이지에서 if2 iframe을 사용하는 것입니다. 이것은 Cross-Origin에도 적용됩니다.

이 Hashs 같은 동일한 원본 정책에 구멍을 만드는 다른 공예 있습니다 (하지만 매우 위의 공예에 비해 제한됩니다)

관련 문제