解决okHttp使用https抛出stream was reset: PROTOCOL_ERROR的问题
Posted 旋风小伙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决okHttp使用https抛出stream was reset: PROTOCOL_ERROR的问题相关的知识,希望对你有一定的参考价值。
昨天在做android接口调用的时候,api接口是https的,用okhttp抛出:
okhttp3.internal.http2.StreamResetException: stream was reset: PROTOCOL_ERROR
原因是协议错误导致的,解决办法很简单,在实例化okhttpclient的时候用以下方法:
OkHttpClient client = new OkHttpClient.Builder() .protocols(Collections.singletonList(Protocol.HTTP_1_1)) .build();
完美解决。
以上是关于解决okHttp使用https抛出stream was reset: PROTOCOL_ERROR的问题的主要内容,如果未能解决你的问题,请参考以下文章
certificatePinner 无法使用 okhttp 抛出 SSLHandshakeException:CertPathValidatorException 未找到证书路径的信任锚
CompositeDisposable.clear 导致 OkHttp 抛出 java.lang.IllegalStateException: Unbalanced enter/exit
使用 OkHttp 进行真实 HTTP 请求的 Robolectric 测试抛出 java.lang.NullPointerException:没有为 PKCS#12 KeyStore 提供密码