GM_xmlhttpRequest POST请求不能跨域工作

时间:2014-02-18 05:52:34

标签: javascript google-chrome tampermonkey gm-xmlhttprequest

我在Tampermonkey中运行脚本,我正在尝试使用GM_xmlhttpRequest方法发送跨域POST请求。然而,这对我不起作用。在控制台中,我只是得到了正常的交叉起源错误:

  

XMLHttpRequest无法加载[domain1]。没有'Access-Control-Allow-Origin'   标头出现在请求的资源上。 Origin [domain2]是   因此不允许访问。

我的理解是,GM请求方法的重点在于它支持跨域,而不像XMLHttpRequest()。所以我不明白为什么这不会起作用。 以下是我正在做的事情的要点:

// @match      https://[domain2]
// @grant      GM_xmlhttpRequest

GM_xmlhttpRequest({
    method: "POST",
    url: "https://[domain1]/exmaple.php",
    data: formData,            
    onload: function(response) {}        
        console.log(response.responseText);
    }
})

也许我错过了一些简单的东西或者我的想法错误

编辑:我想我应该注意上面的代码嵌套在不同的普通XMLHttpRequest中,以防它影响它。

1 个答案:

答案 0 :(得分:1)

事实证明,Tampermonkey中的“Unsafe window retrieval”设置只需要设置为Native。似乎现在正在工作