Apache httpclient 4.x loadKeyMaterial方法已弃用,请告诉我替代方法
我正在使用httpclient4.5.5jar。httpclient4.4中不推荐使用loadkeyMaterial方法。请建议一些替代方案。您应该使用fromApache httpclient 4.x loadKeyMaterial方法已弃用,请告诉我替代方法,apache-httpclient-4.x,Apache Httpclient 4.x,我正在使用httpclient4.5.5jar。httpclient4.4中不推荐使用loadkeyMaterial方法。请建议一些替代方案。您应该使用fromorg.apache.http.ssl.SSLContextBuilder而不是fo fromorg.apache.http.conn.ssl.SSLContextBuilder,后者已被弃用 因此,基本上更改您的导入: configureBody(request, requestData.getBody()) c
org.apache.http.ssl.SSLContextBuilder
而不是fo fromorg.apache.http.conn.ssl.SSLContextBuilder
,后者已被弃用
因此,基本上更改您的导入:
configureBody(request, requestData.getBody())
configureHeaders(request, requestData.getHeadersAsMap())
String keyPassphrase = "password";
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream("Resources/certificates/selfsigned.jks"), keyPassphrase.toCharArray());
SSLContext sslContext = SSLContexts.custom().loadKeyMaterial(keyStore, "password").build(); //(keyStore, "password").build()
HttpClient httpClient = HttpClients.custom().setSSLContext(sslContext).build();
HttpResponse response = httpClient.execute(request, httpClientContext)
coming error:- groovy.lang.MissingMethodException: No signature of method: org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial()
导入java.security.KeyStore导入javax.net.ssl.SSLContext导入org.apache.http.client.HttpClient导入org.apache.http.ssl.SSLContexts导入org.apache.http.ssl.SSLContextBuilder类HttpclientRequest{void loader(){String keypspassphrase=“password”;KeyStore KeyStore KeyStore=KeyStore.getInstance(“JKS”);KeyStore.load(新文件输入流(“Resources/certificates/selfsigned.jks”);keyPassphrase.toCharArray();SSLContext SSLContext=SSLContexts.custom().loadKeyMaterial(密钥库,“密码”).build();HttpClient HttpClient=HttpClients.custom().setSSLContext(SSLContext).build();}”
// The one deprecated to be removed from your code
//import org.apache.http.conn.ssl.SSLContextBuilder;
// The good one
import org.apache.http.ssl.SSLContextBuilder;