【问题标题】:jsonp callback not working - code includedjsonp 回调不起作用 - 包含代码
【发布时间】:2011-12-02 10:03:18
【问题描述】:

在这里我正在学习 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)"
?>

马上,什么都没有发生。 这里到底出了什么问题?

【问题讨论】:

  • 您是否收到任何控制台错误?响应 JSON 是什么样的?

标签: php json jsonp


【解决方案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>

【讨论】:

    猜你喜欢
    • 2012-10-09
    • 1970-01-01
    • 2014-04-03
    • 2014-08-14
    • 2020-09-26
    • 2016-07-02
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    相关资源
    最近更新 更多