xmlhttprequest - 异常101错误

时间:2011-09-16 22:34:45

标签: javascript google-chrome xmlhttprequest userscripts

requrl_1 = "http://www.example.com/index.php";
requrl_2 = "http://www.example.com/redirect.php";

当我请求“ requrl_1 ”时,没有问题。我得到了回应。 “ index.php ”不是重定向页面。

但是 requrl_2 是重定向器页面,重定向到另一个网站(例如:http://www.cnn.com)。

所以当我使用XMLHttpRequest请求时,我收到异常101 错误。

我必须请求“ redirect.php ”,没有其他解决方案。

我该怎么做?为什么我会收到“异常101 ”错误。


我正在为谷歌浏览器编写 Greasemonkey 用户脚本脚本。

2 个答案:

答案 0 :(得分:1)

最好只安装Tampermonkey并使用它来运行脚本。然后,您可以使用GM_xmlhttpRequest()Doc进行编码 - 它具有跨域支持。脚本获得增强的功能,以匹配Greasemonkey在Firefox上可以做的事情。

如果您不想安装Tampermonkey ,Chrome userscripts now support cross-site requests via GM_xmlhttpRequest()

所以,你可以使用:

GM_xmlhttpRequest ( {
    method:     "GET",
    url:        "http://www.example.com/redirect.php",
    onload:     function (response) {
                    //-- Do your business here.
                }
} );

答案 1 :(得分:1)

来自XMLHttpRequest Spec

  

如果出现问题(无限循环,网络错误),状态必须   被设置为加载对象的所有成员(不包括readyState)   必须设置为初始值。此外,如果async设置为false,则a   必须引发NETWORK_ERR异常。另外,全部注册   必须删除事件侦听器。

基本上,重定向导致触发相同的原始策略。哪个是触发错误。该请求应该使用代理而不是重定向。