我正在尝试访问由 https 保护的应用程序,我有一个 p12 证书(已作为 .cer 导入到我的 jdk 的 cacerts 文件夹中)。
我已经尝试过本教程但没有成功: https ://dzone.com/articles/ssl-based-feignclient-example-in-java-microcervice
而且我正在使用此解决方案的一部分: How to use p12 client certificate with spring feign client
调试 ssl 连接时出现以下错误:
javax.net.ssl|ERROR|25|http-nio-auto-1-exec-1|2021-01-26 16:56:34.789 BRT|TransportContext.java:317|Fatal (HANDSHAKE_FAILURE): Received fatal alert: handshake_failure
我当前的 feign 配置类
@Bean
@ConditionalOnMissingBean
public Feign.Builder feignBuilder(Retryer retryer) {
return Feign.builder().retryer(retryer);
}
@Bean
public Feign.Builder feignBuilder() {
return Feign.builder()
.retryer(Retryer.NEVER_RETRY)
.client(new Client.Default(getSSLSocketFactory(), null));
}
private SSLSocketFactory getSSLSocketFactory() {
String keyStorePassword = "myPassword";
char[] allPassword = keyStorePassword.toCharArray();
SSLContext sslContext = null;
try {
sslContext …Run Code Online (Sandbox Code Playgroud)