这与Angular无关。问题是默认情况下CORS限制标头,并且在调用CORS请求时您看不到“授权”标头。所以,调整服务器让它发送授权头
必须提供Access-Control-Allow-Headers以响应OPTIONS请求(飞行前)。
的 必须提供Access-Control-Expose-Headers以响应POST / GET请求。 强>
访问控制 - 暴露 - 标题:授权
只是想发布答案,因为它可能会帮助其他人: 设定的解决方案
Access-Control-Expose-Headers: Authorization
然后 - 前端也可以读取Authorization标头。
这个答案帮助了我: 链接
它显示了如何在后端添加它以及如何在前端使用它
Java后端:
public void methodJava(HttpServletResponse response){ ... response.addHeader("access-control-expose-headers", "Authorization"); }
并像这样访问角度的标题:
return this.http .get(<your url here for your backend>) .map(res => console.log("cookie: " + res.headers.get("Authorization") ) }