【发布时间】:2011-11-19 17:59:05
【问题描述】:
我注意到和XMLHttpRequest.getResponseHeader() 的结果并不总是与返回的真实标头匹配(如果请求是以常规方式发出的)。
例如,假设我正在为https://foo.example.com/api/resource/100 发出xhr 请求。在 Chrome 的开发者控制台中,在“网络”下,我可以看到正在做出的响应——我还可以看到所有的响应标头(比如 10)。但是(复制粘贴控制台):
> response
XMLHttpRequest
> response.getAllResponseHeaders();
"content-type: text/html
"
对可用的标头有任何限制吗?这取决于响应类型吗?我记得有一套完整的 404 标头,但只有这个 400 的标头。
什么给了?
【问题讨论】:
-
如果我在此页面上向
http://stackoverflow.com/发出请求,我可以取回所有标题。我不确定如何重现。 -
我意识到这种模糊性——试图缩小到合适的情况。最初发出的请求是跨域请求,带有 Access-Control-Allow-Origin。请原谅这个问题的匆忙感觉,很快就会详细说明:我现在没有时间进一步调查这个。我希望这是某种我不知道的已知限制。
标签: javascript http xmlhttprequest