码迷,mamicode.com
首页 > Web开发 > 详细

跨域总结-JSONP和XHR2

时间:2016-12-17 13:38:04      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:xhr   http   ges   error   分享   其他   cors   access   地址   

demo下载地址:http://pan.baidu.com/s/1kV9EBGj (密码:qgbu)

一、jsonp方式

1.服务器搭建:

文件jsonpcli.js:作为客户端服务器   jsonp.html:请求页

技术分享

文件jsonpser.js:作为服务端服务器  process_get:响应页

技术分享

运行这两个文件,客户端端口为8082,服务端端口为8081,跨域。

技术分享

2.跨域请求

文件jsonp.html(三种方式任选一个)jsonp.html向process_get发出请求

技术分享

技术分享

技术分享

技术分享

3.测试

在浏览器中输入网址:http://127.0.0.1:8082/jsonp.html

如图,请求成功!

技术分享

 

二、XHR2方式

依然上述三个文件,做部分修改,下图所示。

1.修改

请求页ajax不用jsonp方式,响应页头信息中加了字段"Access-Control-Allow-Origin"

技术分享

技术分享

2.测试

在浏览器中输入网址:http://127.0.0.1:8082/jsonp.html

如图,请求成功!

技术分享

下面是浏览器中查看请求和回应的详细信息,感兴趣的可以看看,对比下:

三、JSONP详细信息

jsonp.html

技术分享

技术分享

技术分享

技术分享

process_get

(方式一)

技术分享

技术分享

技术分享

技术分享

技术分享

(方式二)

技术分享

技术分享

技术分享

(方式三)

技术分享

技术分享

技术分享

四、XHR2详细信息

jsonp.html

技术分享

技术分享

技术分享

技术分享

 process_get

1.⊙o⊙发现这次跨域ajax请求是简单请求

2.自动在请求头中添加一个Origin字段

3.服务器根据Origin值,决定是否同意这次请求

4.(∩_∩)同意,响应头里添加一个access-control-allow-origin字段,响应。(╯^╰)不同意,不加该字段,抛错,被error函数捕获。

技术分享

技术分享

技术分享

技术分享

 番外:关于CORS是简单请求还是非简单请求,关于XHR2头信息的其他字段,过几天在再写。

跨域总结-JSONP和XHR2

标签:xhr   http   ges   error   分享   其他   cors   access   地址   

原文地址:http://www.cnblogs.com/taoxiaodan/p/6189392.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!