先说结论,因为前端和nginx对接,所以需要在nginx添加如下配置向前端暴露header
add_header 'Access-Control-Expose-Headers' 'Authorization'
排查过程
1.后端设置了Authorization 的响应头作为token的返回,前后端本地联调没有问题
response.setHeader("Authorization", Objects.equals(tokenNew, "") ?token:tokenNew);
2. 发布到服务器上,开启nginx代理,结果前端返回的接口拿不到自定义的Header,然后到network里面一看,明明有啊
3.百度了一下,网上说后端设置属性add_header 'Access-Control-Expose-Headers' 'Authorization'
,结果还是不行,为何?突然想到我是用nginx代理的,前端直接访问的nginx,是不是要在nginx中设置
4.果然,如果用nginx代理,需要在nginx中设置,如果不用nginx代理直接在后端响应中设置