關於volley請求失敗會重新請求問題

2021-06-27 23:46:11 字數 937 閱讀 2190

volley中沒有指定的方法來設定請求超時時間,可以設定

retrypolicy 來

變通實現。

defaultretrypolicy類有個initialtimeout引數,可以設定超時時間。要確保最大重試次數為0,以保證超時後不重新請求。

為確保請求失敗後不重新請求問題,我們可以針對volley這樣設定:

req.setretrypolicy(new defaultretrypolicy(constants.cud_socket_timeout,

constants.max_retries, defaultretrypolicy.default_backoff_mult));

jsonobjectrequest req = new jsonobjectrequest(method.get,

jsondataurl, 

null, 

new response.listener()   

},   

new response.errorlistener()  

});//重試不請求

req.setretrypolicy(new defaultretrypolicy(constants.cud_socket_timeout,

constants.max_retries, defaultretrypolicy.default_backoff_mult));

//增、刪、改等操作超時時間

public static final int cud_socket_timeout = 10000;

//查詢超時時間

public static final int r_socket_timeout = 5000;

//最大重試請求次數

public static final int max_retries = 0;

關於Volley重複請求的問題

最近在專案中用volley的時候發現乙個請求的問題 當網路不好的時候請求介面有時候會發出去多次請求,而且是不停的一直請求不會停下來,抓請求後發現請求週期就是設定的超時時間,如圖 查詢資料並檢視原始碼後解決問題,原始碼的defaultretrypolicy類中有乙個建構函式 constructs a ...

Volley網路請求概述

自動排程網路請求 支援併發網路連線 即支援多執行緒 支援標準的http快取協議 由伺服器來決定是否快取資料 支援請求優先順序設定 4級 支援取消單個或多個請求 易於定製 重試 擴充套件性強。比如retry backoff機制 強大的網路請求能力讓你輕鬆的傳送非同步請求來填充ui資料 提供除錯和跟蹤工...

網路請求Volley篇 Android

volley相關api 1.requestqueue 請求佇列,會自動執行佇列中的請求 volley.newrequestqueue context 建立乙個請求佇列 addrequest request request 將請求新增到請求佇列 2.request 代表請求的介面 stringrequ...