2017-09-11 49 views
0

使用HttpURLConnection和HttpResponseCache的股票Android示例,我創建了一個調用兩個url兩次的bare bones appFirst one without Content-Lengthsecond one with Content-LengthHttpResponseCache沒有緩存沒有內容長度頭的網址

我可以在查爾斯看到沒有Content-Length的端點沒有被緩存。我從緩存網址中刪除了Content-Length,並確認這也防止了緩存。

不幸的是,根據Gzip plugin docs,沒有辦法根據gzipping和Content-Length進行調整。

有沒有辦法強制HttpResponseCache緩存url,即使Content-Length丟失?還有沒有內容長度緩存URL的邏輯是什麼? (iOS沒有正確緩存內容長度)

*使用Volly或Restify是最後的手段,因爲現有的代碼庫很大。

+0

「即使Content-Length丟失,是否有強制HttpResponseCache緩存url的方法?」 - 我懷疑它,缺乏自定義ROM。 「還有什麼是沒有內容長度緩存URL後面的邏輯?」 - 「開發者X爲什麼做決定Y」的形式問題?不適合Stack Overflow,因爲通常只有Developer X可以回答,而Developer X不太可能會看到你的問題。 – CommonsWare

+0

@CommonsWare我認爲可能Content-Length是一些http規範或類似的東西所必需的。 –

+0

我不認爲有一個規範定義了客戶端緩存的行爲。 – CommonsWare

回答

0

結束移動到改造沒有問題沒有內容長度頭緩存。