我一直在努力解决这个问题,现在知道为什么不可能。 网址
http://twittercounter.com/api/?username=Anand_Dasgupta&output=json&results=3
返回一个json但是当我附加一个“& callback = get”时,它没有指定回调包装函数。
所以现在唯一的解决方案是手动围绕json数据构建一个包装器。
我的问题是我该怎么做。 是否有一些代码已经存在于php / javascript中,我可以根据我的规格进行更改。
任何建议都将受到赞赏。
谢谢
阿南德
答案 0 :(得分:3)
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 . ')';
?>