如何从 Angular 2 响应中获取所有 headers?

How to get all the headers from an Angular 2 response?

我在 Chrome 开发工具中看到的响应 header 与 Angular 2 在 Chrome 控制台中显示的响应不匹配。

只有 Content-Type header 在执行后出现:

this.http.get(tempUrl).map(res=>{
      console.log("csrf received");
      console.log(res);
})

只有 "safe" header 的特定列表默认公开(至 Javascript)。这是出于安全原因。本榜单如下

  • Cache-Control
  • Content-Language
  • Content-Type
  • 过期
  • Last-Modified
  • 编译指示

为了公开其他 headers,服务器应该发送访问控制 header Access-Control-Expose-Headers,列出它想要公开的所有 headers。

Access-Control-Expose-Headers: Content-Length, X-CSRF-Token