Spring Cloud Feign/Ribbon与企业代理

Gui*_*oll 3 proxy netflix spring-boot netflix-feign netflix-ribbon

我想使用身份验证的公司代理后面的外部世界使用REST服务.

如何配置Spring Boot + Spring Cloud Feign/Ribbon以使用我们的代理?

use*_*453 7

我相信你正在寻找这样的东西:

import feign.Feign;
import okhttp3.OkHttpClient;
import java.net.InetSocketAddress;
import java.net.Proxy;
...
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("proxy-url", 1234));
OkHttpClient okHttpClient = new OkHttpClient.Builder().proxy(proxy).build();
Feign.builder()
    .client(new feign.okhttp.OkHttpClient(okHttpClient))
    .target(...);
Run Code Online (Sandbox Code Playgroud)

您只需要另外添加compile 'io.github.openfeign:feign-okhttp:9.5.0'到您的项目中.

target子句包含您定义的接口.进一步参考:https://github.com/OpenFeign/feign