获取自己的标头 $Resource AngularJs

2024-02-17

我有 GO 语言的 REST API 和 Angularjs 的前端,但是当我以 Angular 形式获取资源时,我的自定义标头不存在。

控制器:

  Persons.query(
    function (data, headerGetter, status) {

      var headers = headerGetter();

      console.log(headers["X-Total-Count"]); //PRINT: undefined
      console.log(headers) //PRINT: {Content-Type:application/json;charset=utf-8}
      console.log(data); //PRINT: [{name:'mr x', age:'67'}, ....]

    },
    function (error) {
      console.error(error);
    });

Model:

myApp.factory("Persons", function ($resource) {
  return $resource(api_url+"/persons");
});

响应 Chrome 或 Firefox,任何客户端:

Access-Control-Allow-Methods:GET
Access-Control-Allow-Origin:*
Content-Length:1839
Content-Type:application/json; charset=utf-8
Date:Thu, 12 Mar 2015 21:53:54 GMT
X-Total-Count:150

您从与您所在域不同的域发出请求API位于,操作称为Cross-site HTTP requests ( CORS )

为了使用自定义标头,您需要设置另一个名为Access-Control-Expose-Headers

如果您希望客户端能够访问其他标头,您必须 使用 Access-Control-Expose-Headers 标头。该标头的值 是您想要公开的响应标头的逗号分隔列表 客户端。

此标头允许服务器将允许浏览器的标头列入白名单 访问。例如:

Access-Control-Expose-Headers: X-My-Custom-Header,X-Another-Custom-Header 

这允许 X-My-Custom-Header 和 要向浏览器公开的 X-Another-Custom-Header 标头。


我这样做的方式.NET(我想这有点相似Go):

HttpContext.Current.Response.AppendHeader("Access-Control-Expose-Headers", "X-Total-Pages, X-Records");
HttpContext.Current.Response.AppendHeader("X-Total-Pages", pages.ToString());
HttpContext.Current.Response.AppendHeader("X-Records", records.ToString());

And in AngularJS我收到这样的标题:

var headers = headers();
headers['x-total-pages']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取自己的标头 $Resource AngularJs 的相关文章

随机推荐

  • 为什么FILE *不存储打开文件的地址

    include
  • 带有条件group by语句的MongoDB查询

    我需要从 mongoDB 数据库导出客户记录 导出的客户记录不应具有重复的值 firstName lastName code 是对记录进行重复数据删除的关键 如果数据库中存在两条具有相同键的记录 那么我需要优先考虑具有电子邮件以外的值的源字
  • 打开下载的 PDF 文件不会触发 ActivityNotFoundException

    我想从某个网址下载 PDF 并且还想触发catch如果未检测到 PDF 查看器 则使用短语 这是我的代码 try startActivity new Intent Intent ACTION VIEW Uri parse materialP
  • 请求被中止:无法创建 SSL/TLS 安全通道 [重复]

    这个问题在这里已经有答案了 可能的重复 请求被中止 无法创建 SSL TLS 安全通道 https stackoverflow com questions 2859790 the request was aborted could not
  • 如何在Excel之外执行vba宏

    我有一个 Excel 电子表格 其中包含大量 VBA 和宏 其中包括一个按钮 如何从Python 例如 在Excel之外执行Excel中的VBA代码 特别是单击按钮并触发其onclick事件 Note 我愿意接受不同语言的答案 例如 C C
  • Sharepoint UserProfileManager 没有管理用户配置文件权限

    我有一个让我有点抓狂的问题 使用 UserProfileManager 作为未经授权的用户 问题 用户没有 管理用户配置文件 权限 但我仍然想使用 UserProfileManager 使用 SPSecurity RunWithElevat
  • 反转 HList 并转换为类?

    我使用 Shapeless 在 Akka 中累积物化值作为 HList 并将其转换为案例类 对于这个问题 您不必了解 Akka 太多 但默认方法将物化值累积为递归嵌套的 2 元组 这并不是很有趣 因此 Shapeless HLists 似乎
  • 通过 Socket 连接使用 PrintWriter 将 PDF 文件打印到打印机

    我必须使用具有特定 IP 地址的打印机打印 pdf 文件 我可以打印特定的文本 但我想打印文件或 html 解析的文本 My Code try Socket sock new Socket 192 168 0 131 9100 PrintW
  • NetFSMountURLSync 无法使用自定义安装点?

    我正在尝试以编程方式挂载一些 WebDAV 和 SMB 共享 并且我想为卷指定除默认名称之外的特定名称 例如 如果我安装 https my sharepoint school edu personal grigutis https my s
  • Android AppWidget 配置 - 在新任务中启动

    我一直在寻找这个 所以我有一个应用程序小部件 它有一个配置活动 我可以在按下应用程序上的按钮时打开该活动 场景是 打开应用程序 使用主页按钮关闭应用程序 选择添加我的小部件 我已经配置了小部件 放置在我的主屏幕上 然后使用小部件上的按钮再次
  • 如何在perl中读取匹配字符串上方的n行?

    假设我有一个文件 xx txt 它包含数据 1 I am here 2 to work in 3 Perl for writing 4 a script for 5 myself 假设我想搜索字符串脚本并想显示三个 上面有几行 我该怎么办
  • int a=1, b=a++; 是否调用未定义的行为?

    Does int a 1 b a 调用未定义的行为 初始化之间没有序列点介入a及其在初始化程序中的访问和修改b 但据我所知 初始化不是对象的 修改 指定初始值设定项来给出对象的 初始值 根据 6 7 8 初始化 第 8 段 初始化器指定存储
  • 可以直接用二进制写程序吗?我怎样才能让计算机执行它?

    我知道这可能看起来很奇怪并且自找麻烦 但我认为体验古代程序员以前经历过的事情是很有趣的 那么如何执行仅用二进制编写的程序呢 假设我知道我在做什么 当然不使用汇编 我只想写一系列像111010111010101010101并执行它 那么我该怎
  • 如何使用 WPF 后台工作者

    在我的应用程序中 我需要执行一系列初始化步骤 这些步骤需要 7 8 秒才能完成 在此期间我的 UI 变得无响应 为了解决这个问题 我在一个单独的线程中执行初始化 public void Initialization Thread initT
  • -XX:+PrintGC 和 -verbose:gc 之间的区别

    我想了解以下之间的区别 XX PrintGC and verbose gc显然这些看起来很相似 本文没有列出verbose gc http www oracle com technetwork articles java vmoptions
  • 如何使用 TFS 构建服务器中的模板运行 NUnit 测试

    我需要使用 TFS Server 2010 中的工作流模板运行 nUnit 测试 我找到了下面所有解释如何配置构建服务器的参考资料 http morten lyhr dk 2008 05 using nunit and ncover wit
  • Error62:在 VBA 脚本中输入文件末尾以搜索目录中包含关键字的文件

    希望有人能够指出我误入歧途的地方 我创建了一个脚本来搜索目录中的所有文件 并返回包含已输入到单元格中的特定关键字的任何文件的文件路径和文件名 该脚本似乎适用于我在桌面上设置的测试文件夹 但是当我尝试搜索包含更多文件的另一个目录时 我收到 输
  • 自定义活动设计器中的参数验证

    我在验证自定义活动的设计器中正常工作时遇到问题 重现该行为的最简单示例如下 我有一个自定义 WF4 活动 其中包含存储在字典中的动态参数集合 Designer typeof DictionaryActivityDesigner public
  • Rand Index函数(聚类性能评估)

    据我所知 python 中没有可用于 Rand Index 的软件包 而对于调整后的 Rand Index 您可以选择使用sklearn metrics adjusted rand score labels true labels pred
  • 获取自己的标头 $Resource AngularJs

    我有 GO 语言的 REST API 和 Angularjs 的前端 但是当我以 Angular 形式获取资源时 我的自定义标头不存在 控制器 Persons query function data headerGetter status