Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzare CompleteMultipartUpload
con un AWS SDK o CLI
I seguenti esempi di codice mostrano come utilizzareCompleteMultipartUpload
.
Gli esempi di operazioni sono estratti di codice da programmi più grandi e devono essere eseguiti nel contesto. È possibile visualizzare questa operazione nel contesto nei seguenti esempi di codice:
- C++
-
- SDKper C++
-
//! 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;
}
- CLI
-
- AWS CLI
-
Il comando seguente completa un caricamento in più parti per la chiave multipart/01
nel bucket: my-bucket
aws s3api complete-multipart-upload --multipart-upload file://mpustruct
--bucket my-bucket
--key 'multipart/01
' --upload-id dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R
L'ID di caricamento richiesto da questo comando viene emesso da create-multipart-upload
e può essere recuperato anche con. list-multipart-uploads
L'opzione di caricamento in più parti del comando precedente utilizza una JSON struttura che descrive le parti del caricamento in più parti che devono essere riassemblate nel file completo. In questo esempio, il file://
prefisso viene utilizzato per caricare la JSON struttura da un file nella cartella locale denominata. mpustruct
mpustruct:
{
"Parts": [
{
"ETag": "e868e0f4719e394144ef36531ee6824c",
"PartNumber": 1
},
{
"ETag": "6bb2b12753d66fe86da4998aa33fffb0",
"PartNumber": 2
},
{
"ETag": "d0a0112e841abec9c9ec83406f0159c8",
"PartNumber": 3
}
]
}
Il ETag valore per ogni parte è upload, viene emesso ogni volta che si carica una parte utilizzando il upload-part
comando e può anche essere recuperato chiamando list-parts
o calcolato prendendo il MD5 checksum di ogni parte.
Output:
{
"ETag": "\"3944a9f7a4faab7f78788ff6210f63f0-3\"",
"Bucket": "my-bucket",
"Location": "https://my-bucket.s3.amazonaws.com/multipart%2F01",
"Key": "multipart/01"
}
- Rust
-
- SDKper Rust
-
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();
Per un elenco completo delle guide per AWS SDK gli sviluppatori e degli esempi di codice, consultaUtilizzo di questo servizio con un SDK AWS. Questo argomento include anche informazioni su come iniziare e dettagli sulle SDK versioni precedenti.