【问题标题】:building a jsonp wrapper for json data为 json 数据构建 jsonp 包装器
【发布时间】:2010-11-07 16:17:33
【问题描述】:

我已经尝试解决这个问题很长时间了,现在知道为什么它不可能了。 网址

http://twittercounter.com/api/?username=Anand_Dasgupta&output=json&results=3

返回一个json,但是当我附加一个“&callback=get”时,它没有指定回调包装函数。

所以现在唯一的解决方案是手动构建一个包装器来围绕 json 数据。

我的问题是我该怎么做。 php/javascript 中是否已经存在一些代码,我可以根据我的规范进行更改。

我们将不胜感激。

谢谢

阿南德

【问题讨论】:

    标签: json twitter jsonp


    【解决方案1】:

    JSONP 的目的是将 JSON(将在客户端评估为 JavaScript)包装到只有请求数据的客户端知道的回调中。这可以防止客户端执行不需要的 JavaScript 代码。如果没有回调,您将遇到相同的源策略问题(JSONP 解决了该问题),因此您只能请求脚本来自的 URL。

    基本上,您必须使用 PHP 附加回调,这意味着在服务器端,使用代理脚本。该脚本从另一个 URL 检索数据并将其包装到回调中:

    <?php
        // Don't know on the fly how to request data from another URL in PHP, but it's easy to find out
        $response = request_url('http://twittercounter.com/api/?username=Anand%5FDasgupta&output=json&results=3');
        echo $_GET['callback'] . '(' . $response . ')';
    ?>
    

    【讨论】:

      猜你喜欢
      • 2013-07-31
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2014-06-23
      • 2011-06-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多