2009-06-04 4 views
1

크로스 사이트 XHR API가 널리 지원 될 때까지 JavaScript를 통해 크로스 사이트 요청을하는 가장 좋은 방법은 무엇입니까? 나는 iFrames를 사용해 왔지만 조금 엉망이 될 수 있습니다. 더 좋은 방법이 있습니까? (더 나은 방법은 더 쉽게 작업 할 수 있습니다.)JavaScript로 크로스 사이트 요청을하는 가장 좋은 방법은 무엇입니까?

또한 jQuery와 같은 프레임 워크가 아닌 순수한 JavaScript 코드를 선호합니다. 자체 미니 프레임 워크를 사용하고 있으며, 그들이 그것을 한 방법을 찾아야하고 싶지 않다.

EDIT : 동적 인 <script> 태그 방법을 사용할 수 없으므로 언급 한 것을 잊어 버렸습니다. 대상 서버를 제어 할 수 없습니다.

답변

4

내가 아는 두 가지 일반적인 방법이 있습니다. 하나는 서버에서 프록시를 사용하는데, 기본적으로 PHP는 사용자를 위해 데이터를 가져옵니다.

다른 하나는 동적 스크립트 태그를 사용하고 있습니다. 여기에 더 많은 정보 :

http://bulletproofajax.com/workshop/slides/04formats.html

+0

대상 서버를 제어 할 수 없어 두 번째 방법이 작동하지 않습니다. 하지만 +1 프록시 메서드에 대해 생각하지 않았다. –

+0

해킹을 시도하지 마시고 프록시를 사용하십시오. 프록시를 사용하지 않는 사람을 두려워하는 사람이라면 가능한 한 단단히 잠그고 얻을 수있는 것만 얻을 수 있습니다. – epascarello

0

당신이 잡아하려고하는 데이터가 JSON 경우, JSONP 조사 :

http://www.hunlock.com/blogs/Howto_Dynamically_Insert_Javascript_And_CSS

페이지 9이 슬라이드 쇼의는 또한 몇 가지 정보가있다. 원격 서버의 스크립트를 참조하는 DOM에 <script> 태그를 삽입하여 작동합니다. 다른 쪽 끝의 서버는 데이터와 함께 "콜백"함수를 호출하는 json/javascript 스타일 응답을 반환합니다. 기본적으로 원격 스크립트의 뜻은 다음과 같은 :

callbackfunc 당신이 당신의 스크립트에서 정의 된 함수이었다
callbackfunc({'somedata':'testing'}); 

.

관련 문제