我正在尝试使用“新”WebExtensions系统开发基本的Firefox插件。
我想
问题是如何使用插件发出Web请求(第2点)。我发现我可以使用XMLHttpRequest,但是出于安全考虑,我无法访问远程路径。
那是因为(我猜)javascript代码在页面内运行,即使我认为插件是......外部的。
当然结果将是在页面中,但我认为插件可以作为代理来发出此请求。那说我不知道怎么做,应该做什么。
我不想使用一些奇怪的技巧(比如删除一些安全控制),我想以“正确”的方式做到这一点。
我还不明白的是,插件是否可以在他们制作的页面中运行。
编辑:好的,事实证明chrome文档实际上比mozilla更好。要实际使用XHR进行跨站点请求,您必须在清单中添加一行代码。
{...
"permissions": [
"http://random.com/"
],
}..
我仍然不确定这是否是我做的目标的正确方法。
答案 0 :(得分:0)
要实际使用XHR跨站点请求,您必须在清单中添加一行代码。
$(function() {
var delay = 3,
span = $('span'),
posts = [1,2,32,42,5],
looper = $.Deferred().resolve();
$.each(posts, function(i, data) {
looper = looper.then(function() {
return $.ajax({
data: {
json: JSON.stringify(data),
delay: delay
},
method: 'post',
url: '/echo/json/',
dataType: 'json'
}).done(function(response) {
span.append('Response:<br />');
span.append(response + '<br />');
$('span').append('Waiting ' + delay + ' seconds<br /><br />');
});
});
});
});