AJAX 使用 CORS 获取自定义响应标头

Posted

技术标签:

【中文标题】AJAX 使用 CORS 获取自定义响应标头【英文标题】:AJAX get custom response headers with CORS 【发布时间】:2013-08-27 04:56:08 【问题描述】:

我的服务器将自定义标头与响应一起发送。我得到了响应数据,但我无法使用 jQuery 的 getAllResponseHeaders() 或 AngularJS $http 服务访问自定义标头。我得到的只是content-type。当我使用 DevTools 或 fiddler 检查请求响应时,我可以看到服务器发送的所有自定义标头,但我无法从 xhr 获取它们。有什么办法可以访问所有的标头吗?

【问题讨论】:

【参考方案1】:

好的,在我的服务器配置Access-Control-Expose-Headers添加允许的标头后,我得到了这个工作

【讨论】:

是的,任何不被视为"simple" 的跨域响应标头都必须在 Access-Control-Expose-Headers 响应标头中引用,以便它们可以通过 XHR 访问。

以上是关于AJAX 使用 CORS 获取自定义响应标头的主要内容,如果未能解决你的问题,请参考以下文章

JQuery、CORS 和自定义响应标头

由 CORS 阻止的 Spring Boot 自定义响应标头

在 IE10 的 AJAX CORS 请求中添加自定义标头时,CORS 请求中止

Safari 和 CORS:自定义响应标头消失

获取 API、自定义请求标头、CORS 和跨域重定向

jQuery Ajax 访问自定义响应标头