jsonp是ajax提交的一种格式不会受跨域限制
一.前端发送
代码语言:javascript复制<button>11111</button>
<script src="https://cdn.static.runoob.com/libs/jquery/1.8.3/jquery.js"></script>
<script>
document.querySelector('button').onclick = function () {
$.ajax({
url: 'http://localhost:8000/test',
type: 'get',
dataType: 'jsonp',
data: { //注意内容必须为字典
aaa:aaa //字典里内容前面key可以不加"",默认会给你加上""变成字符串但是不会当成变量
}, //字典后面value有''为字符串,没有为变量
success: function (data) {
console.log(data);
}
});
}
</script>
二.后台接受
代码语言:javascript复制#我就拿python举例,其他也大同小异
from django.shortcuts import render,HttpResponse,redirect
def test(request):
callback=request.GET.get('callback')
print(dict(request.GET)) #传过来的内容他会打散,具体的自己看一下就知道
#注意点返回的字符串必须是 'callback ("返回的字符串")' 这样的一个字符串,不然前端不会接收
return HttpResponse(callback '("ok")')