spring-WebClient是否使用默认的信任库



我很好奇下面的代码是如何返回HTTP-200正确响应的

WebClient.builder().build()
.get()
.uri("https://www.google.com")
.retrieve()
.toEntity(String.class)
.block();  

其中我没有配置SSL上下文,并且我正在访问一个安全的站点。

然而,当我对以下URI执行相同操作时,

  • https://www.cricinfo.com
  • https://jsonplaceholder.typicode.com

我明白了,

Fatal (CERTIFICATE_UNKNOWN): PKIX path building failed: sun 
.security.provider.certpath.SunCertPathBuilderException: unable to find valid 
certification path to requested target

是否存在spring-webclient正在使用的默认信任库?

如果没有提供SSL上下文,它将在Java的默认信任库($JAVA_HOME/lib/security/cacerts(中查找证书,如果在那里找不到,它将抛出异常

最新更新