Javascript Google Chrome,同一来源策略,删除篡改脚本
我自己编写了一个脚本,当我访问某个网页时,它使用jqueryajax函数记录该网页中的一些数据。它获取一些信息并将其发送到本地Apache主机,以保存在文本文件中 它工作了几个月,但我现在收到一个与此同源策略相关的错误(我知道它是如何工作的及其目的),浏览器现在正在结束脚本执行,显示以下消息:Javascript Google Chrome,同一来源策略,删除篡改脚本,javascript,jquery,google-chrome,greasemonkey,tampermonkey,Javascript,Jquery,Google Chrome,Greasemonkey,Tampermonkey,我自己编写了一个脚本,当我访问某个网页时,它使用jqueryajax函数记录该网页中的一些数据。它获取一些信息并将其发送到本地Apache主机,以保存在文本文件中 它工作了几个月,但我现在收到一个与此同源策略相关的错误(我知道它是如何工作的及其目的),浏览器现在正在结束脚本执行,显示以下消息: The page at https://www.website.com/ displayed insecure content from http://127.0.0.1:8081/whatever.ph
The page at https://www.website.com/ displayed insecure content from
http://127.0.0.1:8081/whatever.php
其次是:
Refused to connect to connect 'http://127.0.0.1:8081/whatever.php?arguments=1' because it
violates the following Content Security Policy directive: "connect-src
https://www.website.com/* https://*.website.com/
https://*.website.net xhr: error: SECURITY_ERR: DOM Exception 18
最后一个域在错误消息上显示为红色。一个奇怪的细节是,在Tampermonkey上的JavaScript代码中,我有这些域的@includes
,但没有红色标记的域。我添加了它并进行了测试,但没有起作用
我在谷歌上找到的每一个讨论都告诉我如何禁用这个策略,但如果你正在开发一个扩展,那就不是我的情况
这段代码将只在我的机器上运行,我不打算以任何方式分发它,因此任何解决方案都会受到欢迎,即使解决方案是直接更改浏览器配置
如果这有用,我正在使用Windows 7。在您的本地服务器上,将数据发送到的
which.php
设置(即发送头访问控制允许来源:
)。您不需要上面的任何内容。在ajax调用中需要做的就是添加
php?callback=?&您的参数在这里
在php文件中,检索数据时只需添加以下内容:
echo $_GET['callback'].$your_data_here
就这些 不幸的是,它无法修复jQueryAjax请求,因为它不知道将联系哪些站点 如果你联系的页面是Facebook,那么你可以用它来模拟Chrome 24