JSONP, насколько мне известно, просто загружает скрипт из URL вместо того, чтобы создавать XHR. Вместо того, чтобы возвращать json/xml/plain-text, URL-адрес будет возвращать javasript. Возвращенный javascript будет просто вызовом глобальной функции с переданными данными JSON. jQuery удобно создает эту глобальную функцию перед запросом JSONP и отправляет ее идентификатор как «обратный вызов» в запросе JSONP.
Проще говоря, вы должны получить доступ к $ _GET ['callback'] (должен использовать $ .get для междоменного), он содержит имя функции обратного вызова. Например:
<?php echo $_GET['callback']."(".json_encode($arrayJSONData).")"; ?>
Это вернет javascript, который вызывает глобальную функцию javascript с переданными им данными json.
Помните, что это не XHR/Ajax, а скорее динамическое добавление нового элемента сценария DOM, вы не можете POST ваши данные, таким образом, нет $ _POST. Как вы отправляете данные POST при создании элемента сценария в HTML? Это данные GET, которые могут быть переданы только: <script src='someurl.php?this=getdatastuff'></script>
.
Я думаю, что это как все работает. xb
Первое сообщение, что вы код, второй вы устанавливаете правильные заголовки (http://snippets.dzone.com/posts/show/5882)? –