spring - Spring Boot,来自配置的 Feign 静态标头
问题描述
我在从我的 FeignClient 的 application.yml 文件中获取 API 密钥时遇到了一些问题。
@FeignClient(name="CRM-api", url="${api_url}", configuration= <myConfiguration.class>)
@Headers({"Authorization: ${api_key}"})
public interface CRMAPIClient {
甚至可以在 Headers 注释中使用占位符值吗?我也厌倦了在每个端点上设置标头,但它仍然无法检索 api-key 的配置。我设法得到 ${api_url} 但不是 ${api_key} 值
// 莱纳斯
解决方案
请删除@Headers 中的“$”符号
是的,您可以通过以下方式发送它-
@FeignClient(name="email-service", url ="${email.url}")
public interface EmailService
{
@RequestMapping(method = RequestMethod.POST,value="/send_mail", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
@Headers({"Content-Type: application/x-www-form-urlencoded","x-auth-id: {email.xauthid}"})
void sendData(@RequestBody Map<String, ?> formParams);
}
In application.properties of define the configuration
email.url=<<url-for-sending-mail>>
email.xauthid=110
推荐阅读
- javascript - TypeError:解析器不是函数
- docker - Kubernetes 集群“cni 配置未初始化”
- pandas - GroupBy 聚合基于条件和使用 pandas 的年度总和
- charts - QML:ChartView 系列的自定义可拖动点委托
- php - 编写一个基本的 php 脚本
- javascript - 使用 JavaScript 使用输入值隐藏和显示 div
- wolfram-mathematica - 将二维函数与奇点线积分
- java - 来自外部签名和公钥证书的 BouncyCastle CMSSignedData
- android - 如何让 NestedScrollView 在 MotionLayout 中滚动?
- javascript - Firebase功能在一定时间后不会删除孩子