Android okhttp3在调用.intercept()时引发java.net.ConnectException

Android okhttp3在调用.intercept()时引发java.net.ConnectException,android,retrofit,retrofit2,okhttp,Android,Retrofit,Retrofit2,Okhttp,这里是我正在使用的代码 class VerificationInterceptor(private val helper: RequestHelper) : Interceptor { override fun intercept(chain: Interceptor.Chain): Response = chain.proceed(chain.request()).apply { if (code == 200

这里是我正在使用的代码

class VerificationInterceptor(private val helper: RequestHelper) : Interceptor {

    override fun intercept(chain: Interceptor.Chain): Response =
        chain.proceed(chain.request()).apply {
            if (code == 200
                && !chain.request().url.toString().contains(BuildConfig.root)
                && !chain.request().url.toString().contains(LOCAL_HOST_BASE)
            ) {
                if (!helper.getResponseCryptoVerification(
                        headers,
                        peekBody(Long.MAX_VALUE).string()
                    )
                ) {
                    throw IOException("Error while generating Hmac for Response JSON")
                }
            }
        }

}
这里的这一行
chain.procedue(chain.request()).apply{
正在使用此堆栈跟踪崩溃

java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect()(PlainSocketImpl.java:-2)
    at java.net.AbstractPlainSocketImpl.doConnect()(AbstractPlainSocketImpl.java:334)
    at java.net.AbstractPlainSocketImpl.connectToAddress()(AbstractPlainSocketImpl.java:196)
    at java.net.AbstractPlainSocketImpl.connect()(AbstractPlainSocketImpl.java:178)
    at java.net.SocksSocketImpl.connect()(SocksSocketImpl.java:356)
    at java.net.Socket.connect()(Socket.java:605)
    at okhttp3.internal.platform.AndroidPlatform.connectSocket()(AndroidPlatform.kt:58)
    at okhttp3.internal.connection.RealConnection.connectSocket()(RealConnection.kt:268)
    at okhttp3.internal.connection.RealConnection.connect()(RealConnection.kt:176)
    at okhttp3.internal.connection.ExchangeFinder.findConnection()(ExchangeFinder.kt:236)
    at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection()(ExchangeFinder.kt:109)
    at okhttp3.internal.connection.ExchangeFinder.find()(ExchangeFinder.kt:77)
    at okhttp3.internal.connection.Transmitter.newExchange$okhttp()(Transmitter.kt:162)
    at okhttp3.internal.connection.ConnectInterceptor.intercept()(ConnectInterceptor.kt:35)
    at okhttp3.internal.http.RealInterceptorChain.proceed()(RealInterceptorChain.kt:112)
    at okhttp3.internal.http.RealInterceptorChain.proceed()(RealInterceptorChain.kt:87)
    at okhttp3.internal.cache.CacheInterceptor.intercept()(CacheInterceptor.kt:82)
    at okhttp3.internal.http.RealInterceptorChain.proceed()(RealInterceptorChain.kt:112)
    at okhttp3.internal.http.RealInterceptorChain.proceed()(RealInterceptorChain.kt:87)
    at okhttp3.internal.http.BridgeInterceptor.intercept()(BridgeInterceptor.kt:84)

问题是导致崩溃的原因是什么?如何捕获它并继续执行请求链?

失败可能与您的拦截器无关。崩溃启动链。继续(链。请求()),日志指向继续(),然后指向套接字连接()顺序有点让我觉得这是直接相关的。如果不继续,你有什么其他想法会导致ConnectException吗call@Rainmaker有没有可能你已经解决了?我有一个自定义的完全相同的跟踪interceptor@AndrewG不,不幸的是,甚至提交错误进行改造,okhttp客户端也没有帮助。我只是打包了它在try-catch和in-catch中创建一个错误主体,以正常失败。失败可能与拦截器无关。崩溃启动chain.procedue(chain.request()),日志指向procedue(),然后指向socket connect()顺序有点让我觉得这是直接相关的。如果不继续,你有什么其他想法会导致ConnectException吗call@Rainmaker有没有可能你已经解决了?我有一个自定义的完全相同的跟踪interceptor@AndrewG不,不幸的是,甚至提交错误进行改造,okhttp客户端也没有帮助。我只是打包了它在try-catch和in-catch中创建一个错误体,以正常地失败。