Feign调用接口要怎么获取到被调用接口headers的值
需要用backend的微服务去调用store服务的接口:
@RequestMapping(method = RequestMethod.GET, value = "/api/get-store-list")
List<store> getStoreList();
而在store的getStoreList接口,查询了store的接口数据,同时把list的总条数放在了接口的headers里面:
Page<Store> storePage = storeRepo.findAll(pageable);
response.addHeader("X-Total-Count", totalElements + "");
这样接口返回list的同时就能直接获取list的总条数。
但是现在用Feign的方式去调用,那要怎么才能获取到getStoreList()接口headers里面的"X-Total-Count"值
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
先回答一下:可以采用自定义Decoder的方式实现。具体实现很多,稍微找个例子https://stackoverflow.com/que...
实现所基于的原理如下:
Feign 远程服务本地化调用,会将返回的信息decode成对应Response Bean.
在接口定义上Feign做的比较简单,抽象出了Encoder 和decoder 接口,其中decoder接口
可以看到decode方法中就可以通过
response.headers()
方式获取到http headers望采纳。