2011-02-10 4 views
0

I이 파일에 다음과 같은 정보 :해서 getJSON 문제

{"Morans Crossing":"Morans Crossing, NSW (2550)","Morangarell":"Morangarell, NSW (2666)"} 

은 파일 이름, 예를 들어, www.site.com/script.php

이다 나는 다음과 같은 JS를 사용하고 subdomain.site.com/script.js

에서 호출하고 있습니다 :

JS가 정보를 호출하고 방화 광을 사용하여 볼 수 있습니다. e params는 script.php에 있어야하지만 response와 html은 비어 있습니다.

subdomain.site.com에서이 기능을 사용 하시겠습니까?

감사합니다.

답변

0

Same-Origin Policy으로 인해 불가능합니다. 이것은 원점과 동일한 호스트로 목적지에 대한 요청 만 허용하는 보안 개념입니다. JSONP이라는 해결 방법이 있습니다. 여기에서 클라이언트는 외국 호스트의 JavaScript 코드를 포함하도록 새 스크립트 태그를 작성합니다. 보통 코드가 호출되도록 callback 매개 변수를 전달합니다. 서버는 JSONP을 지원해야합니다. URL의 끝에

$.ajax({ 
    type: "GET", 
    url: "http://www.flickr.com/services/feeds/photos_public.gne?format=json&jsoncallback=?", 
    dataType: "jsonp", 
    success: function(json) { 
     // do stuff 
    } 
}); 

을 주목 &jsoncallback=? 플리커

작업


. JSONP 콜백입니다. ?은 고유 한 함수 식별자를 만들 수있는 신호 인 jQuery를 사용자의 success 함수에 매핑합니다.

+0

그러면 flickr은 http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=에 대해 getJSON을 어떻게 사용합니까? – Latox

+0

@ 카일 연구 예를 통해 내 대답을 업데이트했습니다. –

관련 문제