更新时间:2023年09月28日17时17分 来源:传智教育 浏览次数:
同源策略(英文全称 Same origin policy)是浏览器提供的一个安全功能。MDN 官方给定的概念是同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。
通俗的理解:浏览器规定,A 网站的 JavaScript,不允许和非同源的网站 C 之间,进行资源的交互,例如:
①无法读取非同源网页的 Cookie、LocalStorage 和 IndexedDB。
②无法接触非同源网页的 DOM。
③无法向非同源地址发送 Ajax 请求。
同源指的是两个 URL 的协议、域名、端口一致,反之,则是跨域。出现跨域的根本原因:浏览器的同源策略不允许非同源的 URL 之间进行资源的交互。
例如网页(http://www.test.com/index.html)和接口(http://www.api.com/userlist),非同源的URL,浏览器允许发起跨域请求,但是,跨域请求回来的数据,会被浏览器拦截,无法被页面获取到。