#php #json #jsonp
#php #json #jsonp
Вопрос:
здесь я изучаю jsonp, и у меня есть небольшие проблемы с простым кодом, то, что я пытаюсь сделать, это простой обратный вызов jsonp, но, похоже, он не работает
вот код:
[index.php ]
<html>
<head>
<script type="text/javascript" id="myJSONPCall" src="http://mySubDomain.comoj.com/jsoncall.php?jsonCallback=myCallback"></script>
<script type="text/javascript">
function myCallback(obj) {
alert(obj.text);
}
</script>
</head>
<body>
</body>
</html>
[jsoncall.php ]
<?php
$myObject = array(
"text" => "Hello, I am data from the remote server.",
"created_at" => "Thu May 07 21:36:12 0000 2009"
);
$myJSONObject = json_encode($myObject);
$myJSONCallback = filter_var($_REQUEST['jsonCallback'], FILTER_SANITIZE_STRING);
print "$myJSONCallback($myJSONObject)"
?>
сразу ничего не происходит.
что именно здесь пошло не так?
Комментарии:
1. Вы получаете какие-либо ошибки консоли? Как выглядит ответ JSON?
Ответ №1:
Вам необходимо определить свою функцию перед вызовом URL, который загружает ответ, просто измените порядок ваших скриптов.
<html>
<head>
<script type="text/javascript">
function myCallback(obj) {
alert(obj.text);
}
</script>
<script type="text/javascript" id="myJSONPCall" src="http://mySubDomain.comoj.com/jsoncall.php?jsonCallback=myCallback"></script>
</head>
<body>
</body>
</html>