json和jsonp
2017-02-28 本文已影响0人
Man僵小鱼
json
1、json是一种轻量级数据交换格式,主要是跨平台交流数据用的
2、他是一种严格的js对象的格式,json的属性必须要用双引号包起来,如果值是字符串也必须要用双引号
jsonp
在HTML中的script、link、img、iframe...这些标签老霸道了,他们想要引入哪个资源,直接放到自己的src或者href中即可,不管别人是否知道或者是否同意(他们不存在跨域的限制)
jsonp利用了script的这个特点,把我们需要请求的数据地址(不是自己的)放到src中,这样当加载到这个script标签的时候,就会向地址所在的服务器(列如腾讯的)发送一个请求,并且传递一个函数,这个函数是我们当前页面中定义的函数(?callback=fn)
比较三个维度:协议、域名、端口号,三者一样为同源,三者有一个不一样即为跨域
cors 的跨域方式
降域实现跨域
postMessage 实现跨域