我正在本地尝试让 JSONP 给我一个正确的响应并将其传递给我的回调函数 jsonp_callback。使用以下代码:如何设置 JSONP?
header('content-type: application/json; charset=utf-8');
$data = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo $_GET['jsonpCallback'] . '('.json_encode($data).')';
和
$.ajax({
url: 'jsonp-response.php',
dataType:'jsonp',
jsonp: 'jsonp_callback',
success: function (r){
console.log(r);
}
});
function jsonp_callback (r){
console.log('jsonp_callback:',r);
}
到目前为止,我收到的响应如下:
jQuery1102035954900085926056_1381230228656({"a":1,"b":2,"c":3,"d":4,"e":5})
查看测试静态 jsonp 响应的第一个答案,我认为我做对了,但我不确定为什么 jQuery 给了我一个唯一的字符串。
我怎样才能让我的回复看起来像这样?
jsonp_callback({"a":1,"b":2,"c":3,"d":4,"e":5})