从服务器响应回来的网页,有某个标签指向另一个服务器,这就叫跨域。 ajax
ajxa是不支持跨域访问的,可是有3种实现跨域访问json
一、用代理跨域
架设代理服务器,用代理服务器进行访问。服务器
二、设置响应头
设置响应头的方式容许跨域访问 函数
res.setHeader("Access-Control-Allow-Origin","*"); post
*表示能够访问全部文件 jsonp
res.setHeader("Access-Control-AllowMethods","GET,POST"); url
提交的方式是get和post.spa
三、jsonp
采用<script>标签进行跨域访问
<script> 代理
function test_p(json){ }
$(function(){
$.ajax({
type:"get", url:"http://localhost:3000/show_list", success:function(d){
console.log(d);
},
dataType:"jsonp",
//预期服务器返回的数据类型为jsonp类型。
jsonp:"callback", //在一个jsonp请求中重写回调函数的名字。
jsonpCallback:"callback" //为jsonp请求指定一个回调函数名。
});
});
</script>