你好,
所以我遇到了这个问题:我试图在我的本地主机上开发一个 HTML 文件,但我安装的所有浏览器都阻止我发送跨域请求。
我想做的是将我用 Python 编写的脚本(使用 Mechanize、pyquery 和 lxml)转换为 Javascript,原因并不重要(我认为在 Javascript 中模拟某些东西会更容易) .
来自本地文件的跨域请求曾经有效,并且仍在最新的 Safari(稳定)上工作,但我无法在这台机器上安装 Safari(它是一个 Linux 机器)。
编辑
我发现了 Firefox 的升级权限,例如:
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
// among others
问题是,我也在尝试访问 iFrame 中加载的内容...正如我所说,我正在尝试模拟浏览器 session ,就像我使用 Mechanize 这样的库一样,但是来自 Javascript。我的脚本在 Safari 中仍然有效。
那么如何强制 Chrome/Firefox/Opera 绕过本地存储文件的所有安全限制?
我对浏览器命令行选项很感兴趣,我什至会考虑给浏览器打个补丁(我是用户,不想把它分发给其他任何人)。
谢谢,
最佳答案
我不确定您是否可以控制 IFrame 中的内容,但既然您说的是本地文件,我猜您可以。 This article在 Ajaxian 上应该涵盖您的用例。 由于您的目标是 A 级浏览器(即不是 IE),您可以使用 html5 window.postMessage 而不是 IFrames。
干杯,乔恩。
我没有 Python Mechanize 库的应用知识。
关于javascript - 如何强制 Chrome/Firefox/Opera 从本地主机执行跨域请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4436771/