1.浏览器同源策略:为了信息安全而制定,保护用户信息安全浏览器同源政策及其规避方法 - 阮一峰的网络日志
什么是同源:满足3个相同,即协议相同,域名相同,端口相同(80默认)
同源造成的限制:
(1) Cookie、LocalStorage 和 IndexDB 无法读取。
(2) DOM 无法获得。
(3) AJAX 请求不能发送。
避免上述三种限制的方法:
共享cookie:一级域名相同,二级域名不同,如http://hq.wz.com 与http://zj.wz.com共享cookie
设置相同的domain即可:
document.domain = 'wz.com'
A设置的Cookie:document.cookie = "test1=hello"
B获取A的Cookie:var allCookie = document.cookie
注意,这种方法只适用于 Cookie 和 iframe 窗口,LocalStorage 和 IndexDB 无法通过这种方法,规避同源政策,而要使用下文介绍的PostMessage API。
另外,服务器也可以在设置Cookie的时候,指定Cookie的所属域名为一级域名,比如.wz.com
。
Set-Cookie: key=value; domain=.wz.com; path=/
这样的话,二级域名和三级域名不用做任何设置,都可以读取这个Cookie。