Javascript XMLHttpRequest问题

Javascript XMLHttpRequest问题,javascript,firefox,xmlhttprequest,header,firefox-addon,Javascript,Firefox,Xmlhttprequest,Header,Firefox Addon,我尝试在firefox扩展中使用XMLHttpRequest进行“POST”,然后尝试获取“Location”标题并在新选项卡中打开它。出于某种原因,XMLHttpRequest不包含位置头 我的代码 另外,如果我将警报更改为getAllResponseHeaders(),以查看所有标题,那么在那里我就看不到位置标题。如果我试图用Firebug监视原始站点的请求,它会在响应中显示位置标题。请帮我解决我的问题。谢谢:) 另外,我也无法使用window.open(url,this.window.ti

我尝试在firefox扩展中使用XMLHttpRequest进行“POST”,然后尝试获取“Location”标题并在新选项卡中打开它。出于某种原因,XMLHttpRequest不包含位置头

我的代码 另外,如果我将警报更改为getAllResponseHeaders(),以查看所有标题,那么在那里我就看不到位置标题。如果我试图用Firebug监视原始站点的请求,它会在响应中显示位置标题。请帮我解决我的问题。谢谢:)


另外,我也无法使用
window.open(url,this.window.title)在新选项卡中打开链接,但由于这与本文的其余部分没有直接关系,我将发布一个单独的问题来询问它。

我认为XHR的当前实现是位置:不可知的。换句话说,由于XHR以一种代码看不见的方式透明地遵循HTTP重定向,我怀疑整个XHR的蜡球已经被定位为不可知的,而头只是被剥离了


[编辑]事实上,现在我想起来了,如果XHR在重定向之后,那么您看到的不是重定向响应的标题,而不是重定向本身的标题吗?

对不起,我不太明白“位置:不可知”是什么意思。。如果这意味着我无法通过任何方式从XHR获得它,那么有没有其他方式可以实现我想要的呢?我的意思是,XHR向程序员公开的API没有以下位置的概念:重定向。它在窗帘后面被神奇地处理着。还可以看到我刚刚添加到答案中的内容。在firebug控制台中,您是否看到与重定向相对应的第二个请求?请参阅@greim,请求将发送到“”,我在控制台中看到“POST”,响应状态为“303 see Other”,其中包含发生的下一个“GET”的位置(在本例中,因为我发送了无效哈希)@所以你是说我没办法做我想做的事?@mcco:对!(至少,不要使用标准的
位置
标题)。看见
function web(url,request)
{
    var http = new XMLHttpRequest();
    http.open('POST',url,true);
    http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    http.onreadystatechange=function() {
    if(http.readyState == 2) {
        alert(http.getResponseHeader("Location"));
        }
    }
    http.send(request);
}