2013-01-29 2 views
1

다른 서버의 데이터를 가져와야하는 경우가 있습니다. 서버는 JSON 만 지원하며 JSONP는 지원하지 않습니다. JSONP를 사용하여 서버에서 데이터를 가져 오는 방법은 무엇입니까?비 JSONP 지원 사이트의 JSONP

나는

그 어떤 다른 해결책이 있습니까 .. JQuery와에서 뭐하는 거지? 친절하게 도와

..

답변

1

JSONP는 자바 스크립트와 도메인 간 문제를 해결 얻을 수 있습니다 존재 이유. 이것은 기본적으로 브라우저의 자바 스크립트가 웹 응용 프로그램과 동일한 도메인에 있지 않은 웹 서비스와 대화 할 수 없어야 함을 의미합니다.

JSONP는 브라우저와 서버가 "동의"함으로 인해이 도메인 간 통합을 가능하게합니다. 당신은 콜백을주고, 그 콜백에 싸여있는 결과를 준다. 자바 스크립트를 통해 호출되기 때문에 보안 위험이 줄어 듭니다.

예 :

You call http://www.abccorp.com/index.php?callback=somevalue 

JSONP없이, 당신이 돌아갈 것 : {일부 '값을'} JSONP와

:

somevalue({ some: 'value' }); 

을 서버가되지 않는 경우 이 콜백을 지원합니다. 자바 스크립트만으로는 불가능합니다.

이 호출을 용이하게하는 서버 측 프로그래밍 언어를 사용하는 것이 좋습니다.

예를 들어 index.php라는 PHP 파일이 있습니다. 귀하의 자바 스크립트는 AJAX JSON 요청을 사용하여이 파일을 호출합니다. 차례 차례로, 그것은 당신이 필요로하는 서버를 호출하고 결과를 얻은 다음 자바 스크립트로 전달합니다. 자바 스크립트를 사용하지 않으므로이 서버 측 프로그래밍에는 javascript와 같은 콜백 (또는 계약)이 필요하지 않습니다.

+0

확인. 그러나 나는 어떻게 phonegap이 도메인 간 요청을 할 수 있는지 이해해야합니까? 그것은 완전히 js이기 때문에 .. – UserROR

+0

귀하의 질문에 배경을 추가하십시오. 당신이 구체적으로하려는 것을 이해하는 것은 약간 어렵습니다. – arcdegree