摘自 李兵 《浏览器工作原理与实践》
同源策略主要表现在 DOM、Web 数据和网络这三个层面。
第一个,DOM 层面。
同源策略限制了来自不同源的 JavaScript 脚本对当前 DOM 对象读和写的操作。
第二个,数据层面。
同源策略限制了不同源的站点读取当前站点的 Cookie、IndexDB、LocalStorage 等数据。
第三个,网络层面。
同源策略限制了通过 XMLHttpRequest 等方式将站点的数据发送给不同源的站点。
同源策略会隔离不同源的 DOM、页面数据和网络通信,进而实现 Web 页面的安全性。