javascript - IE 跨域 Cookie 失效怎么处理?
Jun 06, 2016 pm 08:45 PM
A页面通过JS创建了一iframe调用了B页面
在FIREFOX下B页面的COOKIE在A页面可以读出
但是到了IE 9就不行了,请问怎么解决呢?
回复内容:
A页面通过JS创建了一iframe调用了B页面
在FIREFOX下B页面的COOKIE在A页面可以读出
但是到了IE 9就不行了,请问怎么解决呢?
基于安全性,浏览器是不允许跨域操作的(当然,可以设置为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来做一些控制页面高度、页面跳转之类的事情。
题主的需求简单说就是在A页面需要一些数据,可是这些数据在别的网站,需要想办法去抓。
如果只是自己用的小工具,不兼容IE就好了。
如果需要考虑兼容性,说明是一个正式的项目,一般遇到这种跨域问题可以找后端同学来帮忙。跨域的安全限制都是针对浏览器端来说的,服务器端是不存在跨域安全限制的。后端有phantomJs之类的headless浏览器和各种爬虫可以去其他网站抓数据,然后做成ajax接口给你用,好happy。

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein

Wie analysiert und verarbeitet man HTML/XML in PHP?

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge

Der Schlüssel zum Programmieren: Die Leistungsfähigkeit von Python für Anfänger freischalten

Java leicht gemacht: Ein Leitfaden für Anfänger zur Programmierleistung

Gestalten Sie die Zukunft: Java-Programmierung für absolute Anfänger

C entmystifizieren: Ein klarer und einfacher Weg für neue Programmierer
