首頁 > Java > java教程 > 如何在 Android 中設定 HTTP 請求的連線和套接字逾時?

如何在 Android 中設定 HTTP 請求的連線和套接字逾時?

Linda Hamilton
發布: 2024-12-18 09:47:15
原創
728 人瀏覽過

How to Set Connection and Socket Timeouts for HTTP Requests in Android?

如何在Java 中為Android 設定HttpResponse 逾時

執行連線狀態檢查至關重要,但遇到長時間執行逾時可能會長時間執行逾時令人沮喪。讓我們深入研究如何避免此問題並優化連接處理。

使用 DefaultHttpClient 類別執行 HTTP 請求,您可能會注意到伺服器關閉時有明顯的延遲。這是因為方法 httpClient.execute(method) 無限期地等待回應。若要解決此問題,您可以為 HTTP 回應設定逾時。

設定 HTTP 回應逾時

可以設定兩種類型的逾時:連線逾時和逾時套接字逾時。連線逾時控制建立連線的等待時間,而套接字逾時則限制等待資料傳輸的持續時間。

在 Java 中,您可以使用 HttpConnectionParams 輕鬆指定這些逾時。以下是一個範例:

HttpGet httpGet = new HttpGet(url);
HttpParams httpParameters = new BasicHttpParams();
// Set connection timeout to 3 seconds (3000 milliseconds)
HttpConnectionParams.setConnectionTimeout(httpParameters, 3000);
// Set socket timeout to 5 seconds (5000 milliseconds)
HttpConnectionParams.setSoTimeout(httpParameters, 5000);

DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
HttpResponse response = httpClient.execute(httpGet);
登入後複製

或者,如果您有現有的HTTPClient 對象,則可以配置其參數:

httpClient.setParams(httpParameters);
登入後複製

透過設定適當的超時,可以防止應用程式無限期等待用於連接或數據響應。這可以提高響應能力並防止連接檢查期間不必要的延遲。

以上是如何在 Android 中設定 HTTP 請求的連線和套接字逾時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板