发布于 

jsonp跨域

JSONP的跨域方式:

同源策略限制了对非同源地址发送ajax请求

JSONP与ajax无关,而是借助script标签对非同源地址进行请求


1
2
3
4
5
6
7
<script>
function success(res) {
console.log(res); 注:不能写在后面
console.log(res.data);
}
</script>
<script src="接口/?callback=success&name=jack&age=18"></script>

JQuery发送jsonp请求方式:

注:JSONP和ajax没有任何关联

JQuery为了方便操作,将jsonp的设置方式直接放在$.ajax()中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$.ajax({
type:'get',
url:'接口',
data:{
name:'jack',
age:18
},
// 设置dataType: 'jsonp'表示本次请求采用jsonp方式发送
// 通过调试工具看到,本次请求的type为script,确定是jsonp请求
// 页面中没有用于发送jsonp的script,是因为jQuery在使用完毕后进行了删除操作
dataType:'jsonp',
success:function(res){
console.log(res);
}
});


本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。