使用okhttp3时候遇到socket.Timeout : ReadTimeOut

该代码示例展示了如何创建一个OkHttpClient实例,并设置其读取超时时间为10秒。通过OkHttpClient的Builder模式,可以定制网络请求的超时时间,以控制等待服务器响应的时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OkHttpClient okHttpClient = new OkHttpClient()
                            .newBuilder().readTimeout(10,TimeUnit.SECONDS).build();

:....oe.ex.m X sExecutionException: [ERR-TMS-998]java.net.SocketExc eption: Socket closed at java.net.SocketInputStream.rea d(SocketInputStream.java: 204) at java.net.SocketInputS tream.read(SocketInputStream.java: 141) at okio.Okio$2. read(Okio.java: 140) at okio.AsyncTimeout$2.read(AsyncTimeout.jav a: 237) at okio.RealBufferedSource.indexOf(RealBufferedSource.java: 355) at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSour ce.java: 227) at okhttp3.internal.http1.Http1Codec.readHeaderLine(Ht tp1Codec.java: 215) at okhttp3.internal.http1.Http1Codec.readRespon seHeaders(Http1Codec.java: 189) at okhttp3.internal.http.CallServerI nterceptor.intercept(CallServerInterceptor.java: 88) at okhttp3.interna Lhttp.RealInterceptorChain.proceed(RealInterceptorChain.java: 147) at okhttp3.intemal.connection.ConnectInterceptor.intercept(ConnectI nterceptor.java: 45) at okhttp3.internal.http.RealInterceptorChain.pro ceed(RealinterceptorChain.java: 147) at okhttp3.Internal.http,RealInt erceptorChain.proceed(RealInterceptorChain. java: 121) at okhttp3.int ernal.cache.Cathetnterceptor intercept(Cachelrterceptor. java:93)at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorC hain.java: 147) at okhttp3.intemal.http.RealinterceptorChain.proceed (ReallnterceptorChain.java: 121) at okhttp3. internal.http.BrdgeInterc eptor intercept(BridgeInterceptor.java: 93) at okhttp3.internalhttp.Re alinterceptorChain.proceed(RealInterceptorChain. java: 147) at okhttp 3. internalhttp.RetryAndFollowUpInterceptor. intercept(RetryAndFollo wUpInterceptor.java: 126) at okhttp3.internal.http.RealnterceptorCh an.proceed(ReallnterceptorChain.java: 147) at okhttp3.internalhttp. erod(tetoh va:121)at k RClsreChi(ealallva:200)at p caent u-tto 3ClentitpReque executeinterna ctn Chenes
03-18
java.net.SocketTimeoutException: timeout at okio.SocketAsyncTimeout.newTimeoutException(JvmOkio.kt:146) at okio.AsyncTimeout.access$newTimeoutException(AsyncTimeout.kt:161) at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:339) at okio.RealBufferedSource.indexOf(RealBufferedSource.kt:430) at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:323) at okhttp3.internal.http1.HeadersReader.readLine(HeadersReader.kt:29) at okhttp3.internal.http1.Http1ExchangeCodec.readResponseHeaders(Http1ExchangeCodec.kt:180) at okhttp3.internal.connection.Exchange.readResponseHeaders(Exchange.kt:110) at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:93) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109) at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109) at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109) at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109) at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109) at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201) at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154) at com.example.Main$6.run(Main.java:288) at java.base/java.lang.Thread.run(Thread.java:1447) Caused by: java.net.SocketTimeoutException: Read timed out at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:277) at java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:303) at java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:345) at java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:790) at java.base/java.net.Socket$SocketInputStream.implRead(Socket.java:983) at java.base/java.net.Socket$SocketInputStream.read(Socket.java:970) at java.base/sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:489) at java.base/sun.security.ssl.SSLSocketInputRecord.readHeader(SSLSocketInputRecord.java:483) at java.base/sun.security.ssl.SSLSocketInputRecord.bytesInCompletePacket(SSLSocketInputRecord.java:70) at java.base/sun.security.ssl.SSLSocketImpl.readApplicationRecord(SSLSocketImpl.java:1461) at java.base/sun.security.ssl.SSLSocketImpl$AppInputStream.read(SSLSocketImpl.java:1068) at okio.InputStreamSource.read(JvmOkio.kt:93) at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:128) ... 19 more
最新发布
07-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值