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