Javascript 如何修复Greasemonkey上的exposedProps错误(GM\u xmlhttpRequest)?
我已经为Greasemonkey编写了我的第一个脚本,它工作得很好,只是它在每个页面上都返回了exposedProps错误。我已经修复了所有其他错误,但这一个仍然存在,并且基于web上的一些文章(如),它将在将来Firefox17发布时破坏我的脚本。(现在我正在使用Firefox15.0,幸运的是它只返回一个警告错误!) 我正在脚本中使用GM_xmlhttpRequest:Javascript 如何修复Greasemonkey上的exposedProps错误(GM\u xmlhttpRequest)?,javascript,firefox,greasemonkey,gm-xmlhttprequest,Javascript,Firefox,Greasemonkey,Gm Xmlhttprequest,我已经为Greasemonkey编写了我的第一个脚本,它工作得很好,只是它在每个页面上都返回了exposedProps错误。我已经修复了所有其他错误,但这一个仍然存在,并且基于web上的一些文章(如),它将在将来Firefox17发布时破坏我的脚本。(现在我正在使用Firefox15.0,幸运的是它只返回一个警告错误!) 我正在脚本中使用GM_xmlhttpRequest: function doProcess(id, in_process_type){ var set_id = GM
function doProcess(id, in_process_type){
var set_id = GM_getValue("pid"+id);
GM_xmlhttpRequest({
method: "POST",
url: "https://website_address/return_params.php",
data: "pid="+set_id,
headers: {
"Content-Type": "application/x-www-form-urlencoded"
},
onload: function(response) {
---> var params = response.responseText;
params = params.replace(/(\r\n|\n|\r|\s)/gm,"");
..........
}
});
}
这是一条错误消息,指的是我在前面放了一个箭头的那条线:
Error: Exposing chrome JS objects to content without __exposedProps__ is insecure and deprecated. See https://developer.mozilla.org/en/XPConnect_wrappers for more information.
Source File: file:///Users/Mona/Library/Application%20Support/Firefox/Profiles/tonfd656.default/gm_scripts/MonaTest/MonaTest.user.js
Line: 133
我发现了这个,它为这个错误提供了一个解决方案,但老实说,我不知道如何在这里使用它
我真的很感谢你的帮助。。。
谢谢你抽出时间 这是Greasemonkey本身的一个问题/潜在缺陷。见:
如果您链接到您的完整脚本,我们可能可以帮助您解决问题,但最有可能的是,它只能在Greasemonkey本身内修复。您使用的Greasemonkey版本是什么?你是在注入代码还是在创建节点?@BrockAdams我的ff上安装了Greasemonkey 1.0版,我想这是最新的版本,不是吗?!我还通过直接代码注入包含了一个远程JS文件,但是这个函数对这个脚本没有任何作用……是的,1.0是最新的GM版本。在意识到这个问题可能会影响到所有当前的Greasemonkey版本之前,我问了这个问题。我尝试了“使用显式函数”,但没有成功。所以我想我们还是等着Greasemonkey的修复吧。@BrockAdams谢谢你的链接,我把它们添加到了我的观察列表中。。。我也尝试了您的解决方案,但它在函数processResponse中返回了相同的错误。。。我想我也在等待通用汽车的修复。。。无论如何,谢谢你的时间!(我不接受你的答案的唯一原因是因为代码无法解决问题,但如果你删除该部分,我将接受它,因为链接和这是一个GM问题的观点…)好的,我删除了建议的实验,因为有两个报告说它不起作用。。。请注意,您可以/可以自己编辑答案(或大部分内容)。它进入一个建议的编辑队列,但大多数SE都被批准,除非它们真的很糟糕。