亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot Java后端實現(xiàn)okhttp3超時設置的方法實例

 更新時間:2021年10月13日 12:06:15   作者:菜菜bu菜  
Okhttp的使用沒有httpClient廣泛,網(wǎng)上關于Okhttp設置代理的方法很少,下面這篇文章主要給大家介紹了關于SpringBoot Java后端實現(xiàn)okhttp3超時設置的相關資料,需要的朋友可以參考下

前言

okhttp是一個處理網(wǎng)絡請求的開源項目,是安卓端最火熱的輕量級框架,由移動支付Square公司開發(fā)。OkHttp 是一個默認高效的 HTTP 客戶端。OkHttp3是Java和Android都能用,Android還有一個著名網(wǎng)絡庫叫Volley,那個只有Android能用。

okttp3的github官方地址是:官方地址

  • HTTP/2 支持允許對同一主機的所有請求共享一個套接字。
  • 連接池減少了請求延遲(如果 HTTP/2 不可用)。
  • 透明 GZIP 可縮小下載大小。
  • 響應緩存完全避免網(wǎng)絡重復請求。

OkHttp在網(wǎng)絡出現(xiàn)問題時堅持:它會從常見的連接問題中默默恢復。如果您的服務有多個 IP 地址,如果第一次連接失敗,OkHttp將嘗試備用地址。這對于在冗余數(shù)據(jù)中心托管的 IPv4+IPv6 和服務是必需的。OkHttp 支持現(xiàn)代 TLS 功能(TLS1.3、ALPN、證書鎖定)。它可以配置為回退以實現(xiàn)廣泛的連接。

使用 OkHttp 很容易。它的請求/響應 API 設計有流暢的構建器和不變性。它支持同步阻塞調用和帶有回調的異步調用。

導入

maven

<!-- ok http -->
        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>4.2.2</version>
        </dependency>

gradle方式

compile 'com.squareup.okhttp3:okhttp:4.2.2'

okhttp3方法簡介

一共可以設置5個超時時間分別如下:關于OkHttp的超時時間

OkHttpClient client = new OkHttpClient.Builder()
.connectTimeout(30, TimeUnit.SECONDS)//連接超時(單位:秒)
.callTimeout(120, TimeUnit.SECONDS)//整個流程耗費的超時時間(單位:秒)--很少人使用
.pingInterval(5, TimeUnit.SECONDS)//websocket輪訓間隔(單位:秒)
.readTimeout(60, TimeUnit.SECONDS)//讀取超時(單位:秒)
.writeTimeout(60, TimeUnit.SECONDS)//寫入超時(單位:秒)
.build();
api 描述 生效機制
callTimeout() 整個流程耗費的超時時間 AsyncTimeout + WatchDog實現(xiàn)
connectTimeout() 三次握手 + SSL建立耗時 socket.connect(address, connectTimeout)
readTimeout() source讀取耗時\rawSocket讀取耗時 source.timeout(readTimeout)AsyncTimeout + WatchDog實現(xiàn)\rawSocket.setSoTimeout(readTimeout)
writeTimeout() sink寫入耗時 sink.timeout(writeTimeout)AsyncTimeout + WatchDog實現(xiàn)
pingInterval() websocket輪訓間隔(單位:秒) 這個值只有http2和webSocket中有使用

兩種版本超時設置用法

okhttp3要設置client.Builder

OkHttpClient client = new OkHttpClient.Builder()
         .connectTimeout(15, TimeUnit.SECONDS)
         .readTimeout(15,TimeUnit.SECONDS)
         .writeTimeout(15,TimeUnit.SECONDS)
         .build();

以前的版本設置client

client .connectTimeout(15, TimeUnit.SECONDS)
          .readTimeout(15,TimeUnit.SECONDS)
          .writeTimeout(15,TimeUnit.SECONDS)

總結

到此這篇關于SpringBoot Java后端實現(xiàn)okhttp3超時設置的文章就介紹到這了,更多相關Java實現(xiàn)okhttp3超時設置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java源碼解析之接口Collection

    Java源碼解析之接口Collection

    Collection是List、Queue和set的超集,它直接繼承于Iterable,也就是說所有的Collection集合類都支持foreach循環(huán).除此之外呢,Collection也是面向接口編程的典范,它可以在多種實現(xiàn)類間轉換,這就是面向對象編程的厲害之處.接下來就隨著小編一起去看看吧,需要的朋友可以參考下
    2021-05-05
  • RestTemplate 401 獲取錯誤信息的處理方案

    RestTemplate 401 獲取錯誤信息的處理方案

    這篇文章主要介紹了RestTemplate 401 獲取錯誤信息的處理方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • SpringBoot集成Sharding-JDBC實現(xiàn)分庫分表方式

    SpringBoot集成Sharding-JDBC實現(xiàn)分庫分表方式

    這篇文章主要介紹了SpringBoot集成Sharding-JDBC實現(xiàn)分庫分表方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Springboot啟用多個監(jiān)聽端口代碼實例

    Springboot啟用多個監(jiān)聽端口代碼實例

    這篇文章主要介紹了Springboot啟用多個監(jiān)聽端口代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • redis之基于SpringBoot實現(xiàn)Redis stream實時流事件處理方式

    redis之基于SpringBoot實現(xiàn)Redis stream實時流事件處理方式

    這篇文章主要介紹了redis之基于SpringBoot實現(xiàn)Redis stream實時流事件處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java?RabbitMQ消息隊列詳解常見問題

    Java?RabbitMQ消息隊列詳解常見問題

    消息隊列是最古老的中間件之一,從系統(tǒng)之間有通信需求開始,就自然產(chǎn)生了消息隊列。本文告訴什么是消息隊列,為什么需要消息隊列,常見的消息隊列有哪些,RabbitMQ的部署和使用
    2022-07-07
  • SSM框架使用poi導入導出Excel的詳細方法

    SSM框架使用poi導入導出Excel的詳細方法

    這篇文章主要介紹了SSM框架使用poi導入導出Excel,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 使用spring的restTemplate注意點

    使用spring的restTemplate注意點

    這篇文章主要介紹了使用spring的restTemplate注意點,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • 一篇文章告訴你如何在Java數(shù)組中插入一個字符

    一篇文章告訴你如何在Java數(shù)組中插入一個字符

    本篇文章主要介紹了Java數(shù)組中插入一個字符的相關方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-10-10
  • Java NIO.2 使用Path接口來監(jiān)聽文件、文件夾變化

    Java NIO.2 使用Path接口來監(jiān)聽文件、文件夾變化

    Java7對NIO進行了大的改進,新增了許多功能,接下來通過本文給大家介紹Java NIO.2 使用Path接口來監(jiān)聽文件、文件夾變化 ,需要的朋友可以參考下
    2019-05-05

最新評論