2017-09-11 34 views
0

出於某種原因,以前的工作代碼停止工作,並啓動服務器是失敗的交互過程中的HTTP客戶端的日誌與416谷歌雲端硬盤API 416 HTTP代碼響應

這裏迴應:

-------------- REQUEST -------------- 
GET https://www.googleapis.com/drive/v3/files/0B02Nopv3SQOvOVNKaDIwTEZ3MHd?alt=media 
Accept-Encoding: gzip 
Authorization: <Not Logged> 
Range: bytes=0-33554431 
User-Agent: My app Google-API-Java-Client Google-HTTP-Java-Client/1.22.0 (gzip) 

-------------- RESPONSE -------------- 
HTTP/1.1 416 Requested range not satisfiable 
Alt-Svc: quic=":443"; ma=2592000; v="39,38,37,35" 
Server: UploadServer 
Cache-Control: private, max-age=0 
Content-Range: bytes */0 
X-GUploader-UploadID: AEnB2UqBx9B09Lnr8tG761gdoz3DkhHSNO_OzHh1LkU6B2908v17rnBGQZSNW4ZVTjbRdFtvPWWIqZGdtSrTo6ZWN7YW9nxf6d 
Vary: X-Origin 
Vary: Origin 
Expires: Mon, 11 Sep 2017 15:23:20 GMT 
Content-Length: 225 
Date: Mon, 11 Sep 2017 15:23:20 GMT 
Content-Type: application/json; charset=UTF-8 

我試圖下載一個大約200000字節的文件,所以我認爲「卡盤大小」的含義在某處發生了變化,所以它不能給出282757字節文件的33554431個字節。試圖改變一個較小的值,但沒有成功。

Drive.Files.Get get = drive.files().get(file.getId()) 

MediaHttpDownloader downloader = get.getMediaHttpDownloader() 

downloader.directDownloadEnabled = false 

localFile.newOutputStream() 
get.executeMediaAndDownloadTo(stream) 

直接下載也不起作用,它只是下載「0」字節。 有誰知道如何解決這個問題?

回答

0

416 Range Not Satisfiable 錯誤表示服務器無法提供所請求的範圍。 最有可能的原因是該文檔不包含這樣的範圍, 或範圍標題值雖然在語法上正確,但不是 是合理的。

一個可以從這個forum提供的決議是:

添加「接受範圍:無」到我們的響應頭。

+0

我想試試,但MDN中指出,接受-範圍是響應頭,即應在服務器端設置https://developer.mozilla.org/ru/docs/的Web/HTTP /頭/接受,範圍 – Valya

相關問題