AngularJS - 无法从 $http 读取响应 headers

AngularJS - Cannot read response headers from $http

当我用检查员检查请求时,我的 http 响应包含 headers 身份验证(如此处所述:Authentication:76efbc0946773b62c93e952b502a47acd898200f6f80dc46ac87ffc501c00780),但调用 headers("Authentication") returns null

return $http({
    method: "GET",
    url: url,
    headers: {
      'Content-Type': "application/json"
    }
}).success(function (data, status, headers, config) {
    console.log(headers("Authentication"));
})

你知道我可能做错了什么吗?

仅供参考,我已尝试将其切换回 "promise" 方式,使用 .then,但问题仍然相同。

成功回调:

console.log(headers('content-type'));
console.log(headers());  // All headers

我认为第一行 return 是你 cas 中的结果。
其次,你拿到 'Authentication' 了吗?

自定义 header 将在同一域中可见。在跨域情况下,您需要从服务器发送 Access-Control-Expose-Headers: Authentication, ... header。

您的代码看起来不错,但如果是 CORS 请求,服务器需要在响应中包含 Access-Control-Expose-Headers: {any custom headers}。

上一个 question/answer 有更多详细信息: