[英]How to get headers of the response from fetch
我在 chrome 版本 52.0.2743.82(64 位)上使用 fetch。 我想获取响应中的所有标头。 以下代码段仅返回content-type
但如果您查看 chrome 开发工具,它会显示许多其他响应标头。 如何从 fetch 中获取其他标头。
fetch('https://httpbin.org/get')
.then(response => {
const headers = response.headers.entries();
let header = headers.next();
while (!header.done){
console.log(headers.value);
header = header.next();
}
})
我尝试了 polyfilling(手动覆盖)github 实现。 仍然没有运气。
通过 ajax 请求跨域内容时,您无法访问所有标头。 如果来源相同,您可以访问所有标题。
正如此处的W3 规范中所述,只有Content-Type
、 Last-modified
、 Content-Language
、 Cache-Control
、 Expires
、 Pragma
标头可访问。
此外, https://httpbin.org/get
//httpbin.org/get 仅发送可访问标头列表中的Content-Type
标头,因此,您只能得到那个。
编辑:您可以通过发送带有您希望客户端在响应中Access-Control-Expose-Headers
标头的Access-Control-Expose-Headers
来公开非标准 CORS 响应标头。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.