ajax跨域,两种办法:后端写个代理接口,让后端去抓数据;或者与对方合作,用jsonp等方式传送数据
JSONP
这种方式主要是通过动态插入一个script标签。通过script标签引入一个js文件,这个js文件载入成功后会执行我们在url参数中指定的函数,并且会把我们需要的json数据作为参数传入。所以jsonp是需要服务器端的页面进行相应的配合的。
<script> // 客户端使用getJSON方法请求另一台机子上的脚本 // 浏览器会生成一个随机的callback参数 $.getJSON("http://172.22.22.120/new/ajax_jsonp.php?callback=?",function(json){ alert(json.website); }); </script>
<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>