是否有任何方法可以爲JDK stdlib HttpUrlConnection
設置套接字級選項(如SO_KEEPALIVE)?我試圖找出一種方法來獲取不受偶然「掛起」連接影響的HTTP請求(這似乎是因爲經常發生網絡包丟失而發生的)。更健壯的HTTP客戶端。我知道有setReadTimeout
方法,但我試圖找到一些東西來推動TCP流回到生活中,而不是僅僅中止它,因爲讀取超時似乎。或者至少報告連接失敗已經發生,而不是永遠停留在讀取上。但是,如果連接「仍處於活動狀態」,那麼讀數也會「隨時想要」回來。HttpUrlConnection如何設置SO_KEEPALIVE
通過一些檢查,似乎SO_KEEPALIVE的默認值對於C層和Java級別套接字都是「關閉」的。
你是否結婚了使用HttpUrlConnection? Apache的HttpClient可能有你正在尋找的東西。 [HttpClient](https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/) – drelliot
@drelliot我猜你是對的,隨時讓它成爲答案,我會接受它:) – rogerdpack