本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
搭CompleteMultipartUpload
配 AWS SDK或使用 CLI
下列程式碼範例會示範如何使用CompleteMultipartUpload
。
動作範例是大型程式的程式碼摘錄,必須在內容中執行。您可以在下列程式碼範例的內容中看到此動作:
- C++
-
- SDK對於 C ++
-
注意
還有更多關於 GitHub。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫
中設定和執行。 //! Complete a multipart upload to an S3 bucket. /*! \param bucket: The name of the S3 bucket where the object will be uploaded. \param key: The unique identifier (key) for the object within the S3 bucket. \param uploadID: An upload ID string. \param parts: A vector of CompleteParts. \param client: The S3 client instance used to perform the upload operation. \return CompleteMultipartUploadOutcome: The request outcome. */ Aws::S3::Model::CompleteMultipartUploadOutcome AwsDoc::S3::completeMultipartUpload(const Aws::String &bucket, const Aws::String &key, const Aws::String &uploadID, const Aws::Vector<Aws::S3::Model::CompletedPart> &parts, const Aws::S3::S3Client &client) { Aws::S3::Model::CompletedMultipartUpload completedMultipartUpload; completedMultipartUpload.SetParts(parts); Aws::S3::Model::CompleteMultipartUploadRequest request; request.SetBucket(bucket); request.SetKey(key); request.SetUploadId(uploadID); request.SetMultipartUpload(completedMultipartUpload); Aws::S3::Model::CompleteMultipartUploadOutcome outcome = client.CompleteMultipartUpload(request); if (!outcome.IsSuccess()) { std::cerr << "Error completing multipart upload: " << outcome.GetError().GetMessage() << std::endl; } return outcome; }
-
如需詳API細資訊,請參閱AWS SDK for C++ API參考CompleteMultipartUpload中的。
-
- CLI
-
- AWS CLI
-
下列命令會完成值
my-bucket
區multipart/01
中金鑰的多部分上傳:aws s3api complete-multipart-upload --multipart-upload
file://mpustruct
--bucketmy-bucket
--key 'multipart/01
' --upload-iddfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R
此命令所需的上傳 ID 由輸出
create-multipart-upload
,也可以使用擷取list-multipart-uploads
。上述指令中的 multipart upload 選項會採用描述應重新組合至完整檔案之多部分上載部分的JSON結構。在此範例中,
file://
字首用於從名為的本端資料夾中的檔案載入JSON結構mpustruct
。輸出結構:
{ "Parts": [ { "ETag": "e868e0f4719e394144ef36531ee6824c", "PartNumber": 1 }, { "ETag": "6bb2b12753d66fe86da4998aa33fffb0", "PartNumber": 2 }, { "ETag": "d0a0112e841abec9c9ec83406f0159c8", "PartNumber": 3 } ] }
每次使用
upload-part
指令上載零件時,都會輸出每個零件的上載ETag值,也可以透過呼叫擷取list-parts
或透過取得每個零件的MD5總和檢查碼計算。輸出:
{ "ETag": "\"3944a9f7a4faab7f78788ff6210f63f0-3\"", "Bucket": "my-bucket", "Location": "https://my-bucket.s3.amazonaws.com/multipart%2F01", "Key": "multipart/01" }
-
如需詳API細資訊,請參閱AWS CLI 指令參考CompleteMultipartUpload
中的。
-
- Rust
-
- SDK對於銹
-
注意
還有更多關於 GitHub。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫
中設定和執行。 let _complete_multipart_upload_res = client .complete_multipart_upload() .bucket(&bucket_name) .key(&key) .multipart_upload(completed_multipart_upload) .upload_id(upload_id) .send() .await .unwrap();
-
如需詳API細資訊,請參閱CompleteMultipartUpload
中AWS SDK的以取得 Rust API 參考
-
如需 AWS SDK開發人員指南和程式碼範例的完整清單,請參閱搭配 AWS SDK 使用此服務。本主題也包含有關入門的資訊以及舊SDK版的詳細資訊。