我们正在使用 Spring Cloud 框架开发一套微服务,我们需要做的事情之一就是设置请求标头。我知道我可以传递一个参数@RequestHeader
到 Feign 方法,但值需要来自另一个 bean。我不知道 SPEL 是否可以用于 Feign 参数值。
我认为这对于大多数客户来说是一个足够常见的用例,因此会有一些示例,但到目前为止我还没有找到任何示例。当然,我可以深入研究 Spring 课程代码并尝试覆盖默认的 Feign 配置,但如果我必须编写大量代码来实现此目的,那么它有点违背了声明式客户端的目的。
有什么想法吗?
我在使用 RequestInterceptor 之前已经这样做了,如下所示:
@Component
public class MyRequestInterceptor implements RequestInterceptor {
@Override
public void apply(RequestTemplate template) {
template.headers(getHeadersFromWherever());
}
}
您可以在这里找到一些更有用的信息:
https://github.com/Netflix/feign#user-content-setting-headers-per-target https://github.com/Netflix/feign#user-content-setting-headers-per-target
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)