You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

企业网络下使用WebClient代理时如何解决UnresolvedAddressException?

解决WebClient代理配置导致的UnresolvedAddressException异常

问题根源

你代码里的错误出在代理地址的配置上:InetSocketAddress.createUnresolved("http://mycorporate.proxy.com", 8080) 中给主机名加了http://前缀,而InetSocketAddress只需要纯主机名(不含协议),带前缀会导致系统无法正确解析代理服务器的地址,从而抛出UnresolvedAddressException。

修正后的代码

@Bean
public WebClient restClient() {
    HttpClient httpClient = HttpClient.create()
            .proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP)
                    .address(InetSocketAddress.createUnresolved("mycorporate.proxy.com", 8080)));

    ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClient);

    return WebClient
            .builder()
            .clientConnector(connector)
            .build();
}

额外排查点

  • 确认代理主机名和端口是否和企业网络配置一致,避免拼写错误
  • 如果企业代理需要用户名密码认证,需要补充认证配置:
    .proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP)
            .address(InetSocketAddress.createUnresolved("mycorporate.proxy.com", 8080))
            .username("your-proxy-username")
            .password(() -> "your-proxy-password".toCharArray()))
    
  • 测试代理地址是否可以正常访问,比如用ping mycorporate.proxy.com或者telnet mycorporate.proxy.com 8080验证连通性

内容的提问来源于stack exchange,提问作者IceBane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 19:00:21