javascript - AngularJS $http 对象不显示响应中的所有 header

标签 javascript ajax angularjs

我遇到了一个问题,AngularJS 的 $http 服务没有从我正在轮询的 API 返回所有 header 。这是我得到的:

$http({
    method: 'POST',
    withCredentials: true,
    url: 'http://api.mydomain.com/query',
    data: JSON.stringify(parameters)
})
.success(function(data, status, headers, config){
    ... // setting some scope parameters based on data
    console.log(headers());
})

我可以通过 Chrome 中的网络选项卡得知 API 正在返回一堆响应 header (我对 X-Pagination-Total-Items header 特别感兴趣)。

这是请求中网络选项卡的屏幕截图: Chrome's Network Panel

但是上面的 console.log 语句(应该输出所有的头信息)只返回两个: Console Log...missing headers!

知道发生了什么事吗?我如何实际访问从 AJAX 调用返回的所有 header ?

谢谢,

-内特

最佳答案

原来 Access-Control-Expose-Headers 不能接受通配符。我们需要准确指定客户端应该访问哪些 header ,然后它才起作用。

关于javascript - AngularJS $http 对象不显示响应中的所有 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21635651/

相关文章:

javascript - 如何将 Angular Directive(指令)的链接和 Controller 传递给它

php - JQuery AJAX表单处理无需刷新

jquery - 抑制数据表ajax请求中不必要的参数?

angularjs - 如何在Tomcat 9的rewrite.config文件中为多个angular项目添加多个重写规则

javascript - 用于匹配多个属性的 Angular 指令

javascript - 如何获取具有已分配索引值的数组名称的输入元素?

javascript - IntelliJ IDEA 2017.1 设置中缺少 Javascript 库菜单

javascript - ReactJS 表单渲染问题

javascript - 预选一个值

javascript - 从 IIFE 动态调用构造函数