同源、同源策略、跨域、JsonP和cors

一、同源

如果两个页面的协议、域名和端口都相同,则两个页面具有相同的源。

 

二、同源策略 

同源策略,英文全称Same origin policy,是浏览器提供的一个安全功能。是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。

通俗的理解:浏览器规定,A网站的JavaScript,不允许和非同源的B网站之间进行资源交互。例如:

(一)无法读取非同源网页的Cookie、localStorage和indexedDB。

(二)无法解除非同源网页的DOM

(三)无法向非同源地址发送Ajax请求

三、跨域

不满足同源的就称作跨域。因为有同源策略的存在所以需要跨域。

 

四、JSONP,实现跨域主要方案之一

出现较早,兼容性好,是一种临时解决方案,只支持GET请求,不支持POST请求。

五、CORS,实现跨域主要方案之二

出现较晚,是W3C标准,是跨域Ajax请求的根本解决方案,支持GET和POST请求,但是不兼容低版本的浏览器。

原文地址:https://www.cnblogs.com/shangsi/p/14808364.html