跨域简单了解(jsonp)

前端之家收集整理的这篇文章主要介绍了跨域简单了解(jsonp)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

跨域只要协议、域名、端口有任何一个不同,都被当作是不同的域。


因为存在不同的域,在js中,我们直接用XMLHttpRequest请求不同域上的数据时,是不可以的。但是,在页面上引入不同域上的js脚本文件却是可以的,jsonp正是利用这个特性来实现的。


jsonpjson+padding,可理解为把JSON填充到一个盒子里。

像这样:callbackFunction(["customername1","customername2"]);

菜鸟教程中的例子,JSONP由两部分组成:回调函数和数据。回调函数是当响应到来时应该在页面调用函数,而数据就是传入回调函数中的JSON数据。js文件载入成功后会执行我们在url参数中指定的函数,并且会把我们需要的json数据作为参数传入。


但是,使用jsonp跨越,只支持GET请求而不支持POST等其它类型的HTTP请求;只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行js调用的问题。


其他跨越方法还有:

CORS

通过修改document.domain来跨子域

使用window.name来进行跨域

使用HTML5中新引进的window.postMessage方法来跨域传送数据

原文链接:https://www.f2er.com/json/289255.html

猜你在找的Json相关文章