这个问题是在Jquery Ajax进行跨域时遇到的,经过简单的研究,Kaijia总结了最快速使Ajax数据从单台服务器迁移到多台服务器的的方法。
首先将原有的Jquery代码中的dataType改成“jsonp”,具体代码如下:
1
2
3
4
5
6
7
8
9
|
$.ajax({ async: false , dataType: "jsonp" , jsonp: "callback" , success: function ( json ){ alert( json ); } }); |
其他格式的代码也可以做这个更改,更多信息可以参考官方的jQuery.ajax()手册。
PHP代码的修改比较快速,只需要将原先的代码最后修改并增加一行就可以了。在此处假定$data为需要输出的数据(数组):
1
2
|
$callback = isset( $_GET [ 'callback' ] ) ? $_GET [ 'callback' ] : 'callback' ; echo $callback . '(' . json_encode( $data ) . ')' ; |
来源:http://www.kaijia.me/2012/08/php-simple-modify-support-jsonp/