为json数据构建jsonp包装器

为json数据构建jsonp包装器,json,twitter,jsonp,Json,Twitter,Jsonp,我已经试着解决这个问题很久了,现在知道为什么不可能了。 网址 返回一个json,但是当我附加一个“&callback=get”时,它没有指定回调包装函数 因此,现在唯一的解决方案是围绕json数据手动构建一个包装器 我的问题是我如何做到这一点。 php/javascript中已经存在一些代码,我可以根据我的规范进行更改 如有任何建议,将不胜感激 多谢各位 AnandJSONP的目的是将JSON(在客户端将作为JavaScript进行评估)封装到只有请求数据的客户端才知道的回调中。这可以防止客户

我已经试着解决这个问题很久了,现在知道为什么不可能了。 网址

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

因此,现在唯一的解决方案是围绕json数据手动构建一个包装器

我的问题是我如何做到这一点。 php/javascript中已经存在一些代码,我可以根据我的规范进行更改

如有任何建议,将不胜感激

多谢各位


Anand

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 . ')';
?>