关于 CORS 机制

image.png

出于安全考虑, 浏览器不允许脚本(如 javascript等)进行跨域名的HTTP请求. 故当使用XMLHttpRequest或Fetch只能请求自身所处上下文中的内容.

为了满足应用的要求, 必须要让浏览器放开跨站(cross-domain)访问的限制.

Cross-Origin Resource Sharing (CORS), 即跨域名资源共享机制便应运而生了.

CORS机制给予web服务器跨域名访问控制的功能, 即它可以满足跨域名资源的安全传输.

现代的浏览器使用XMLHttpRequest或Fetch(二者都是web API)等API容器中的CORS来实现跨域资源共享.

很简单一个例子, 如果服务器允许跨站请求的话, 需要在响应头中加入Access-Control-Allow-Origin: *, 这样浏览器才会放行这个响应.

另外还有单独指定的, 详见链接:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

不过相对老的浏览器, 也许需要使用JSONP的帮助. 目前新的浏览器都推荐使用CORS机制.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容