我正在构建一个Spring WebClient,它会内部调用托管在不同服务器上的REST API。为此,我需要在每个握手请求中发送公钥(.cert)和私钥(.key)。
我不确定如何使用Spring WebClient完成这项任务。
我尝试设置WebClient,但遇到了添加此代码段的难题:
WebClient Builder
this.webCLient = WebClient.builder()
.baseUrl("https://some-rest-api.com")
.defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON.toString())
.build();
实际调用
this.webClient.get()
.uri("/getData")
.exchange()
.flatMap(clientResponse -> {
System.out.println(clientResponse);
return clientResponse.bodyToMono(MyClass.class);
});
由于请求中没有添加证书,我在日志中收到了握手错误。
javax.net.ssl.SSLException: Received fatal alert: handshake_failure
如何将这些证书添加到WebClient请求中,以便我不会出现此错误?我有这些证书,但不确定如何添加它们。