本頁面說明 Cloud Storage 中的 XML API 分塊上傳。這種上傳方法會分批上傳檔案,然後使用最終要求將檔案組合成單一物件。XML API 分塊上傳與 Amazon S3 分塊上傳相容。
總覽
XML API 多部分上傳可讓您分批上傳資料,然後組合成最終物件。這種行為有幾項優點,尤其是對大型檔案而言:
您可以同時上傳多個部分,縮短上傳完整資料所需的時間。
如果其中一項上傳作業失敗,您只需要重新上傳整體物件的一部分,不必從頭開始。
由於未事先指定檔案總大小,您可以使用 XML API 分段上傳功能進行串流上傳,或在上傳時即時壓縮資料。
XML API 多部分上傳作業有三個必要步驟:
使用
POST要求啟動上傳,包括指定完成物件應具備的任何中繼資料。回應會傳回UploadId,您可以在與上傳相關的所有後續要求中使用。使用一或多個
PUT要求上傳資料。使用
POST要求完成上傳。這項要求會覆寫值區中任何同名的現有物件。
多部分上傳作業及其上傳的部分,在 bucket 中維持未完成或閒置狀態的時間長度沒有限制。
注意事項
使用 XML API 分塊上傳時,須遵守下列限制:
- 分塊大小有限制,包括大小下限、大小上限,以及用於組合完整上傳內容的分塊數量。
- 要求不支援預先條件。
- 使用這個方法上傳的物件沒有 MD5 雜湊。
- Google Cloud 控制台或 Google Cloud CLI 不支援這種上傳方法。
使用 XML API 分塊上傳時,請注意下列事項:
您可以列出 bucket 中進行中的上傳作業,但只有已完成的上傳作業會顯示在 bucket 的一般物件清單中。
如果上傳的部分從未使用,可能需要支付提前刪除費用。
用戶端程式庫如何使用 XML API 多部分上傳
本節說明如何使用支援 XML API 分段上傳功能的用戶端程式庫,執行 XML API 分段上傳。
用戶端程式庫
Java
詳情請參閱 Cloud Storage Java API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
以下範例會啟動多部分上傳:
下列範例會上傳個別物件部分:
下列範例會列出物件部分:
以下範例會完成多部分上傳:
Node.js
詳情請參閱 Cloud Storage Node.js API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
您可以使用 uploadFileInChunks 方法,執行 XML API 分塊上傳。例如:
Python
詳情請參閱 Cloud Storage Python API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
您可以使用 upload_chunks_concurrently 方法,執行 XML API 分塊上傳。例如: