使用OKHTTP3认证固定进行改造



我正在使用OKHTTP3客户端使用Raturofit 1.9,我正在尝试添加认证固定。以下是相关代码:

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都是不正确的。谁能解释为什么?

几件事要检查,因为您已经编辑了零件很常见,所以我无法确定这些是您是否发行的,但是这两个错误都不会导致固定没有日志。

1)对于CertificatePinner中的hostname,请确保它只是主机名,例如" www.example.com",而不是url" https://www.example.com"。

2)对于.setEndpoint("xxxxxxxxxxxx"),请确保您的端点是https,在http上没有证书,因此没有日志。

相关内容

  • 没有找到相关文章

最新更新