gpt4 book ai didi

Java Spring - 拦截 REST 客户端的执行 (Hystrix Feign)

转载 作者:行者123 更新时间:2023-11-30 05:40:55 24 4
gpt4 key购买 nike

我有一个像这样的 REST 客户端界面:

public interface NameSearchClient {
@RequestLine("POST")
@Headers("Content-Type: application/json")
SearchResponse searchByName(NameSearchRequest request);

}

它在工厂类中实现和设置,如下所示:

@Component
public class NameClientFactory {
public <T> T createFeignClient(Class<T> clientClass, String apiUrl) {
return Feign.builder()
.encoder(new GsonEncoder())
.decoder(new GsonDecoder())
.target(clientClass, apiUrl);
}
}

我想知道是否可以编写一个方面注释,在该客户端进行的每次调用时执行一些操作(在我的例子中是另一个 HTTP 调用)并向请求添加一个新 header ? AspectJ 是合适的工具吗?

最佳答案

创建一个实现feign.RequestInterceptor的bean并在其中完成你的工作:

@Component
public class FeignRequestInterceptor implements RequestInterceptor {
@Override
public void apply(RequestTemplate template) {
// your code here
}
}

另请参阅this answer .

关于Java Spring - 拦截 REST 客户端的执行 (Hystrix Feign),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55692997/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com