同源策略
同源策略(Same-Origin Policy)是一种重要的安全措施,用于Web浏览器中,旨在限制一个网页上的JavaScript代码与来自不同源的资源进行交互。同源策略有助于保护用户的隐私和防止恶意攻击,确保Web应用程序的安全性。
通俗易懂的来说就是你原则上只能访问同一个源的东西
同源策略基于以下原则:
同源定义: 源(Origin)是指网页的协议、主机名和端口号的组合。如果两个网页的这三个要素完全相同,它们被认为是同源的。例如,https://example.com 和 https://example.com 是同源的,但 https://example.com 和 https://anotherdomain.com 是不同源的。
限制跨源访问: 同源策略会禁止一个网页上的JavaScript代码跨源进行以下操作:
读取不同源的文档内容,包括Cookie、LocalStorage和IndexedDB数据。
发起跨源的XMLHttpRequest或Fetch请求。
访问不同源的DOM。
同源策略的目的是防止恶意网页通过跨站点请求或访问用户的敏感信息。例如,如果不使用同源策略,恶意网站可能会发送恶意请求来盗取用户的Cookie,从而冒充用户登录到其他网站。
尽管同源策略对安全非常重要,但有时需要进行跨源通信。为此,Web开发人员可以使用以下方法来规避同源策略的限制:
跨源资源共享(CORS): 服务器可以通过设置适当的CORS标头来允许跨源请求。这允许特定源的网页访问服务器上的资源。
JSONP: JSONP是一种旧式的跨源通信技术,通过动态创建