跨越

ajax跨域,两种办法:后端写个代理接口,让后端去抓数据;或者与对方合作,用jsonp等方式传送数据 

 

JSONP

  这种方式主要是通过动态插入一个script标签。通过script标签引入一个js文件,这个js文件载入成功后会执行我们在url参数中指定的函数,并且会把我们需要的json数据作为参数传入。所以jsonp是需要服务器端的页面进行相应的配合的。

$.getJSON方法跨域请求

<script>
// 客户端使用getJSON方法请求另一台机子上的脚本
// 浏览器会生成一个随机的callback参数
$.getJSON("http://172.22.22.120/new/ajax_jsonp.php?callback=?",function(json){
alert(json.website);
});
</script>

$.ajax方法自定义回调方法

<script>
    $.ajax({
        type : "GET",
        url : "http://172.22.22.120/new/ajax_jsonp.php",
        dataType : "jsonp",    // 数据格式指定为jsonp
        jsonp: "callback",     // 服务点通过这个键值获取回调方法
        jsonpCallback:"cb",   // 指定回调方法
        success : function(json){

        },
    });  

    // 回调方法
    function cb(data){
        alert(data.website);
    }
</script>

  

 

posted @ 2017-04-12 15:43  某某西欧阿姐  Views(110)  Comments(0Edit  收藏  举报