鴻蒙OS ResponseCache

2022-06-11 17:19 更新

ResponseCache

java.lang.Object

|---java.net.ResponseCache

public abstract class ResponseCache
extends Object

表示 URLConnection 緩存的實現(xiàn)。 可以通過執(zhí)行 ResponseCache.setDefault(ResponseCache) 向系統(tǒng)注冊此類的實例,系統(tǒng)將調(diào)用此對象以:

  • 將已從外部源檢索到的資源數(shù)據(jù)存儲到緩存中
  • 嘗試獲取可能已存儲在緩存中的請求資源

ResponseCache 實現(xiàn)決定哪些資源應(yīng)該被緩存,以及它們應(yīng)該被緩存多長時間。 如果無法從緩存中檢索請求資源,則協(xié)議處理程序?qū)钠湓嘉恢毛@取資源。 URLConnection#useCaches 的設(shè)置控制是否允許協(xié)議使用緩存的響應(yīng)。

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
ResponseCache()

方法總結(jié)

修飾符和類型 方法 描述
abstract CacheResponse get(URI uri, String rqstMethod, Map<String,List<String>> rqstHeaders) 根據(jù)請求 uri、請求方法和請求標(biāo)頭檢索緩存的響應(yīng)。
static ResponseCache getDefault() 獲取系統(tǒng)范圍的響應(yīng)緩存。
abstract CacheRequest put(URI uri, URLConnection conn) 協(xié)議處理程序在獲取資源后調(diào)用此方法,并且 ResponseCache 必須決定是否將資源存儲在其緩存中。
static void setDefault(ResponseCache responseCache) 設(shè)置(或取消設(shè)置)系統(tǒng)范圍的緩存。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

構(gòu)造函數(shù)詳細(xì)信息

ResponseCache

public ResponseCache()

方法詳情

getDefault

public static ResponseCache getDefault()

獲取系統(tǒng)范圍的響應(yīng)緩存。

返回:

系統(tǒng)范圍的 ResponseCache

Throws:

Throw名稱 Throw描述
SecurityException 如果已安裝安全管理器并且它拒絕 NetPermission("getResponseCache")

setDefault

public static void setDefault(ResponseCache responseCache)

設(shè)置(或取消設(shè)置)系統(tǒng)范圍的緩存。 注意:非標(biāo)準(zhǔn)協(xié)議處理程序可能會忽略此設(shè)置。

參數(shù):

參數(shù)名稱 參數(shù)描述
responseCache 響應(yīng)緩存,或 null 取消設(shè)置緩存。

Throws:

Throw名稱 Throw描述
SecurityException 如果已安裝安全管理器并且它拒絕 NetPermission("setResponseCache")

get

public abstract CacheResponse get(URI uri, String rqstMethod, Map<String,List<String>> rqstHeaders) throws IOException

根據(jù)請求 uri、請求方法和請求標(biāo)頭檢索緩存的響應(yīng)。 通常,此方法由協(xié)議處理程序在發(fā)出請求以獲取網(wǎng)絡(luò)資源之前調(diào)用。 如果返回緩存的響應(yīng),則使用該資源。

參數(shù):

參數(shù)名稱 參數(shù)描述
uri 用于引用請求的網(wǎng)絡(luò)資源的 URI
rqstMethod 表示請求方法的字符串
rqstHeaders - 從請求標(biāo)頭字段名稱到表示當(dāng)前請求標(biāo)頭的字段值列表的映射

返回:

如果緩存中可用,則為 CacheResponse 實例,否則為 null

Throws:

Throw名稱 Throw描述
IOException 如果發(fā)生 I/O 錯誤
IllegalArgumentException 如果任何一個參數(shù)為空

put

public abstract CacheRequest put(URI uri, URLConnection conn) throws IOException

協(xié)議處理程序在獲取資源后調(diào)用此方法,并且 ResponseCache 必須決定是否將資源存儲在其緩存中。 如果要緩存資源,則 put() 必須返回一個 CacheRequest 對象,該對象包含協(xié)議處理程序?qū)⒂糜趯①Y源寫入緩存的 OutputStream。 如果不緩存資源,則 put 必須返回 null。

參數(shù):

參數(shù)名稱 參數(shù)描述
uri 用于引用請求的網(wǎng)絡(luò)資源的 URI
conn - 用于獲取要緩存的響應(yīng)的 URLConnection 實例

返回:

用于記錄要緩存的響應(yīng)的 CacheRequest。 空返回表示調(diào)用者不打算緩存響應(yīng)。

Throws:

Throw名稱 Throw描述
IOException 如果發(fā)生 I/O 錯誤
IllegalArgumentException 如果任何一個參數(shù)為空
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號