Я использую Retrofit 1.9 с клиентом OKHTTP3, и я пытаюсь добавить сертификацию. Ниже приведен соответствующий код:Модернизация с сертификацией OKHTTP3
String hostname = "xxxxxx.xx";
CertificatePinner certificatePinner = new CertificatePinner.Builder()
.add(hostname, "sha1/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=")
.build();
OkHttpClient client = new OkHttpClient.Builder()
.certificatePinner(certificatePinner)
.build();
return new RestAdapter.Builder()
.setRequestInterceptor(request -> {
request.addHeader("CONTENT-TYPE", "application/json");
})
.setEndpoint("https://xxxxxxxxxxxx").
.setClient(new Ok3Client(client))
.build();
К сожалению, он не работает. У меня нет
"javax.net.ssl.SSLPeerUnverifiedException: Certificate pinning failure!"
исключение и даже мой хост или SHA неверен. Может ли кто-нибудь объяснить, почему?
@lensniak могли бы вы сказать мне, как вы получили булавки («sha1/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx =») –
я получил сертификат (sha1) от конечной точки (Серуэр), к которым я посылаю запросы. – lesniak
Но они (сервер) дают только сертификат –