25.跨域

2017-06-10  本文已影响0人  guidetheorient

参考
1.MDN window.postMessage
2.浏览器同源政策及其规避方法
3.跨域资源共享 CORS 详解

1. 什么是同源策略

浏览器出于安全方面的考虑,只允许与本域下的接口交互。不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。

同源指域名、协议、端口都相同

http://www.example.com/a.html为例http://为协议、www.example.com为域名,80为默认端口号;所以像https://www.example.com/b.htmlhttp://a.example.com/b.htmlhttp://www.example.com:90/b.htmlhttp://www.example.com/a.html均不同源。

对于当前页面来说页面存放的 JS 文件的域不重要,重要的是加载该 JS 页面所在什么域

2. 什么是跨域?跨域有几种实现形式

3. JSONP 的原理是什么

4. CORS是什么

5. 几种跨域实现方式

JSONP具体实现

OPTIONS /cors HTTP/1.1  //‘预检’请求使用OPTIONS方法
Origin: http://api.bob.com   //请求源
Access-Control-Request-Method: PUT  //请求方法
Access-Control-Request-Headers: X-Custom-Header  //自定义头信息

服务器会将自己支持的所有请求信息在响应中返回给服务器,之后浏览器会向简单请求一样发送正式请求。

CORS具体实现

降域具体实现

postMessage具体实现

上一篇 下一篇

猜你喜欢

热点阅读