IE 跨域 Cookie 失效怎么处理?
A页面通过JS创建了一iframe调用了B页面
在FIREFOX下B页面的COOKIE在A页面可以读出
但是到了IE 9就不行了,请问怎么解决呢?
athans
10 years, 6 months ago
Answers
基于安全性,浏览器是不允许跨域操作的(当然,可以设置为cookie在子域名间共享)。
如果要实现完全意义上的跨域操作(任意两个域名),推荐楼主使用postMessage(如: http://github.com/daepark/postmessage ),它借助现代浏览器的window.postMessage, 对于不支持的window.postMessage的浏览器它会使用window location hash polling, 所以浏览器兼容性不错。
举例:
- 周伯通招聘与PHP100的集成便使用postmessage.js库(
http://bbs.php100.com/job/
),周伯通招聘的页面通过iframe完全集成入php100.com页面,两个域名间通过postmessage来做一些控制页面高度、页面跳转之类的事情。
vinving
answered 10 years, 6 months ago