0
Ich versuche org.apache.http.client.HttpClient
zu konfigurieren, mit https zu arbeiten. Dies ist die Client-Konfiguration:Apache HttpClient Fehler: javax.net.ssl.SSLPeerUnverifiedException: Peer nicht authentifiziert
TrustManager[] trustManagers = new TrustManager[] { new DummyTrustManager() };
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(keyManagers, trustManagers, null);
SSLSocketFactory sf = new SSLSocketFactory(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
Scheme scheme = new Scheme("https", 443, sf);
SchemeRegistry registry = new SchemeRegistry();
registry.register(scheme);
ThreadSafeClientConnManager cm = new ThreadSafeClientConnManager(registry);
DefaultHttpClient client = new DefaultHttpClient(cm, httpParameters);
Dies ist der Code von DummyTrustManager
:
public static class DummyTrustManager implements X509TrustManager {
@Override
public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
}
@Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return null;
}
}
Und wenn ich Anfrage senden, erhalte ich
`javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated`
Was könnte das Problem sein?
Ich versuche, dies zu tun, aber Ergebnis ist das gleiche - 'Peer nicht authenticated' ... – Kirill