1
我正在使用Google的網絡庫Volley執行一組操作。特別是,我依靠StringRequest
來獲取一些受保護頁面的HTML。爲了執行(已認證)請求,我總是向請求中添加一組cookie。爲什麼有時候Volley的StringRequest會給我一個空的迴應?
問題是,沒有任何明顯的原因,Volley 有時給我一個空的源代碼! (和沒有204狀態代碼:這是一個純粹的200)。
@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
// HERE: response.data sometimes has size 0!
// on the other hand, response.statusCode is 200.
// [...]
}
我完全肯定這是不是在遠程服務器的問題(當我瀏覽了同樣的頁面,用同樣的Cookie,使用網頁瀏覽器,一切都很好)。我也有很多關於TimeoutError
的問題(不知道它是否有關聯)。
我真的很想切換到特別寫的東西,以便一勞永逸地解決問題,但Volley在盒子中實現的多線程功能仍然是一個限制我的巨大因素。
您是否嘗試運行像Charles或Fiddler2這樣的HTTP代理以確保您獲得了正確的響應正文? – rmtheis