Android --- Retrofit 之 Okhttp3 网络请求总是调用 onFailure 方法,而不调用 onResponse,报错 timeout。
生活随笔
收集整理的這篇文章主要介紹了
Android --- Retrofit 之 Okhttp3 网络请求总是调用 onFailure 方法,而不调用 onResponse,报错 timeout。
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天在做 Android 項(xiàng)目的時(shí)候使用到了 okhttp3 的網(wǎng)絡(luò)請(qǐng)求,由于我沒有設(shè)置
ReadTimeout,指的是建立連接后從服務(wù)器讀取到可用資源所用的時(shí)間。所以就會(huì)拋出異常(timeout),okhttp3 默認(rèn)的 ReadTimeout 是 5s,但是真機(jī)和服務(wù)器之間的交互可能遠(yuǎn)遠(yuǎn)超過(guò) 5s ,所以我們要將此時(shí)間設(shè)置大一點(diǎn)。
設(shè)置方法,見如下代碼,自行在你的 okhttp 處修改
OkHttpClient okHttpClient = new OkHttpClient.Builder().connectTimeout(10, TimeUnit.MINUTES).readTimeout(10, TimeUnit.MINUTES) // 讀取超時(shí).writeTimeout(10, TimeUnit.MINUTES) // 寫超時(shí).build();如果你還想了解這幾個(gè)超時(shí)時(shí)間都代表什么含義,請(qǐng)看下面鏈接:
https://blog.csdn.net/qq_43290288/article/details/119173934
總結(jié)
以上是生活随笔為你收集整理的Android --- Retrofit 之 Okhttp3 网络请求总是调用 onFailure 方法,而不调用 onResponse,报错 timeout。的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android --- ConnectT
- 下一篇: Android --- ImageVie