CORS:浏览器不显示 `location` header,即使它在 `Access-Control-Allow-Headers` 中是允许的

CORS: Browser not expsoing `location` header even though it's allowed in the `Access-Control-Allow-Headers`

我一直在做一些工作来在我的 API 服务器上配置 CORS 以限制访问。我目前从选项预检中为 Access-Control-Allow-Headers 提供以下 headers。

access-control-allow-headers: location,x-correlation-id,content-range,authorization,accept,content-type,origin

完整的 OPTIONS 预检响应:

但是,当执行 POST 时 returns 201 响应,位置 header 在我的 [=33= 中的 Axios 响应 object 中不可见].这似乎是浏览器根据 CORS 策略拒绝位置 header 造成的。我不确定我缺少什么可以让浏览器的位置 header 到 pass-through。

POST 回应

代码中响应 object 的

console.log。

问题是我需要在 CORS 响应中发送 Access-Control-Expose-Headers 并在此处指定位置。这样做会将 header 暴露给浏览器,这样生活就很好了。