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

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

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

前言

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

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

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

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

使用 OkHttp 很容易。它的請(qǐng)求/響應(yīng) API 設(shè)計(jì)有流暢的構(gòu)建器和不變性。它支持同步阻塞調(diào)用和帶有回調(diào)的異步調(diào)用。

導(dǎo)入

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方法簡介

一共可以設(shè)置5個(gè)超時(shí)時(shí)間分別如下:關(guān)于OkHttp的超時(shí)時(shí)間

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

兩種版本超時(shí)設(shè)置用法

okhttp3要設(shè)置client.Builder

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

以前的版本設(shè)置client

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

總結(jié)

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

相關(guān)文章

  • java處理圖片背景顏色的方法

    java處理圖片背景顏色的方法

    這篇文章主要為大家詳細(xì)介紹了java處理圖片背景顏色的方法,藍(lán)底寸照批量轉(zhuǎn)換為白底,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Spring?Data?JPA?映射VO/DTO對(duì)象方式

    Spring?Data?JPA?映射VO/DTO對(duì)象方式

    這篇文章主要介紹了Spring?Data?JPA?映射VO/DTO對(duì)象方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java Scanner類及其方法使用圖解

    Java Scanner類及其方法使用圖解

    這篇文章主要介紹了Java Scanner類及其方法使用圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Spring運(yùn)行環(huán)境Environment的解析

    Spring運(yùn)行環(huán)境Environment的解析

    本文主要介紹了Spring運(yùn)行環(huán)境Environment的解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • Java方法反射實(shí)現(xiàn)原理詳解

    Java方法反射實(shí)現(xiàn)原理詳解

    這篇文章主要為大家詳細(xì)介紹了Java方法反射的實(shí)現(xiàn)原理,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • springboot 運(yùn)行 jar 包讀取外部配置文件的問題

    springboot 運(yùn)行 jar 包讀取外部配置文件的問題

    這篇文章主要介紹了springboot 運(yùn)行 jar 包讀取外部配置文件,本文主要描述linux系統(tǒng)執(zhí)行jar包讀取jar包同級(jí)目錄的外部配置文件,主要分為兩種方法,每種方法通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • Spring?AOP核心功能示例代碼詳解

    Spring?AOP核心功能示例代碼詳解

    AOP面向切面編程,它是一種思想,它是對(duì)某一類事情的集中處理,而AOP是一種思想,而Spring?AOP是一個(gè)框架,提供了一種對(duì)AOP思想的實(shí)現(xiàn),它們的關(guān)系和loC與DI類似,這篇文章主要介紹了Spring?AOP統(tǒng)一功能處理示例代碼,需要的朋友可以參考下
    2023-02-02
  • spring?boot?使用Mybatis-plus查詢方法解析

    spring?boot?使用Mybatis-plus查詢方法解析

    這篇文章主要介紹了spring?boot?使用Mybatis-plus查詢方法解析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • java實(shí)現(xiàn)udp通訊的代碼

    java實(shí)現(xiàn)udp通訊的代碼

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)udp通訊的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • JAVA中Collections工具類sort()排序方法

    JAVA中Collections工具類sort()排序方法

    這篇文章主要介紹了JAVA中Collections工具類sort()排序方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2016-11-11

最新評(píng)論