JSONP은 내가 아는 한 XHR을 만드는 대신 URL에서 스크립트를로드하는 것입니다. json/xml/plain-text를 반환하는 대신 URL은 javasript를 반환합니다. 반환 된 자바 스크립트는 JSON 데이터가 전달 된 전역 함수에 대한 호출 일뿐입니다. jQuery는 JSONP 요청 전에이 전역 함수를 편리하게 생성하고 JSONP 요청 내에서이 식별자를 "콜백"으로 전송합니다.
간단히 말하면 $ _GET [ 'callback']에 액세스해야합니다 (크로스 도메인에 $ .get을 사용해야 함). 콜백 함수의 이름을 보유합니다. 예 :
<?php echo $_GET['callback']."(".json_encode($arrayJSONData).")"; ?>
json 데이터가 전달 된 글로벌 JavaScript 함수를 호출하는 javascript가 반환됩니다.
이것은 XHR/Ajax가 아니라 새로운 DOM 스크립트 요소를 동적으로 추가한다는 것을 의미하므로 데이터를 POST 할 수 없으므로 $ _POST가 없습니다. HTML로 스크립트 요소를 만들면 어떻게 POST 데이터를 보냅니 까? 전달할 수있는 데이터는 GET입니다 : <script src='someurl.php?this=getdatastuff'></script>
.
나는 그게 전부라고 생각합니다. xb
출처
2010-12-13 12:09:53
Sam
코드가 첫 번째 게시물이면 두 번째로 올바른 헤더 (http://snippets.dzone.com/posts/show/5882)를 설정합니까? –