现在需要使用open-feign去调用一个第三方接口,而且这个第三接口还要使用代理配置才能调通,内部使用的httpclinet5作为客户端,现在就是需要为这个第三方的接口的feign单独配置一套,还不能影响其他的feign,这个需要怎么做,网上搜的都不行,那些都要使用@Configuration这个注解,会导致全局生效,影响到其他的feign
3 Likes
为啥要用open feign去调第三方呢,用resttemplate就可以了吧
2 Likes
之前是使用okHttp做的,现在要改成feign
1 Like
虽然我是搞java的,但是我只会if和for,不懂帮顶
干了6-7年Java了 我至今项目都没用过cloud体系
文心的回答,感觉有点对头,试试:https://yiyan.baidu.com/share/nHtpY0GFxn
嗯我感觉吧 这个问题只需要单独声明一个 feign的配置bean就行 然后在需要的FeignClient配置上声明这个特殊的配饰bean 应该问题不大,如果有问题,那就当我没说
这么舒服
因为进的公司体量都不至于用到分布式微服务的····
问题就是如何在拦截器器里面设置代理
@Bean
public RequestInterceptor requestInterceptor() {
return template -> {
// 这里添加代理配置,比如设置代理主机和端口
// 注意:这里只是一个示例,具体实现可能依赖于你使用的HttpClient
System.setProperty("http.proxyHost", "proxy.example.com");
System.setProperty("http.proxyPort", "8080");
};
}
我去,使用系统设置,那不就全部都用了代理了
对啊,还不能这样,操作
https://www.jb51.net/article/253541.htm 这个看一下,不知道行不行
@Configuration这种都是全局配置,老难受了
喜欢hutools梭哈
写一个配置类A.class, Feign.builder().client(new Client.Proxied(null,null,new Proxy(Proxy.Type.HTTP, new InetSocketAddress(“localhost”, 8080)))).build(); 然后@FeignClient(configuration = A.class)不行吗?官网文档上写的是不需要加@Configuration注解。
使用ProxySelector实现指定域名走代理,其他默认直连就行了
今天刚好在学这个,但是好像没看懂你描述的是什么意思
我尝试一下
From #develop:qa to 开发调优
1 Like