在使用ajax时,出现跨域问题
$.ajax({
url: "http://10.10.10.10:8080/test,
type: 'get',
dataType: 'json',
success: function (data) {
console.log(data);
},
error:function(error){
console.log(error);
}
});
//这里会报错,出现跨域问题
$.ajax({
url: "http://10.10.10.10:8080/test,
type: 'get',
dataType: 'jsonp',
jsonp: "callback",
jsonpCallback:"jsonpCallback",
success: function (data) {
console.log(data);
},
error:function(error){
console.log(error);
}
});
function jsonpCallback(data){
console.log(data);
}
//这里jsonpCallback(可以自定义,但是得和服务器返回的名称保持一致)。
//是请求的数据后,返回回来的json串中回调函数的名称。
//所以你只需在定义一个名为jsonpCallback 的function,请求成功后会调用这个函数。
- 注意
后台返回的数据,必须要用回调函数包起来。比如如果你本来返回的数据为:[{name:"zhangsan",age:18}]
使用jsonp请求后,就应该返回:
jsonpCallback([{name:"zhangsan",age:18}])
(这点很重要)。