相关疑难解决方法(0)

如何将请求代理到api.twitter.com,包括SSL证书?

我正在使用Twitter的新Fabric SDK for Android.我已将Charles设置为Mac上的代理,因此我可以分析API响应中的JSON有效负载.

启用了Charles中的SSL代理并为我的测试设备授予了访问权限.

但是,Charles对Twitter的任何请求都显示以下错误:

网址 https://api.twitter.com

状态 失败

失败 SSLHandshake:收到致命警报:certificate_unknown

Logcat告诉我:

retrofit.RetrofitError: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.   

Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
    at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:306)
    at com.squareup.okhttp.Connection.upgradeToTls(Connection.java:241)
    at com.squareup.okhttp.Connection.connect(Connection.java:158)
    at com.squareup.okhttp.Connection.connectAndSetOwner(Connection.java:174)
    at com.squareup.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:120)

Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
    at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:318)
    at com.android.org.conscrypt.TrustManagerImpl.checkServerTrusted(TrustManagerImpl.java:209)
    at io.fabric.sdk.android.services.network.PinningTrustManager.checkSystemTrust(PinningTrustManager.java:117)
    at io.fabric.sdk.android.services.network.PinningTrustManager.checkServerTrusted(PinningTrustManager.java:160)
Run Code Online (Sandbox Code Playgroud)

在我看来,我需要相信一些证书...任何想法?

twitter ssl android ssl-certificate

8
推荐指数
1
解决办法
2497
查看次数

标签 统计

android ×1

ssl ×1

ssl-certificate ×1

twitter ×1