PHP 支持 JQuery 的 JSONP 跨域访问

Jquery Ajax进行跨域时需要使用JSONP,但JSONP格式和JSON格式是有区别的,如果直接返回JSON格式就会报错


首先将原有的Jquery代码中的dataType改成“jsonp”,具体代码如下:
$.ajax({
    url: "http://ajax.yoursite.com/api.php",
    async: false,
    dataType: "jsonp",
    jsonp: "callback",
    success: function( json ){
        alert( json );
    }
});

PHP代码的修改比较快速,只需要将原先的代码最后修改并增加一行就可以了。在此处假定$data为需要输出的数据(数组):


$callback = isset( $_GET[ 'callback' ] ) ? $_GET[ 'callback' ] : 'callback';
echo $callback . '(' . json_encode( $data ) . ')';

posted @ 2019-02-28 10:42  AppleLife  阅读(444)  评论(0编辑  收藏  举报