Conclui a tarefa de upload multipart de um objeto.
Observações de uso
Ao executar o comando complete-multipart-upload, forneça uma lista completa de todas as partes válidas, incluindo o número da parte e a entity tag (ETag) de cada uma. O valor de PartNumber varia de 1 a 10.000. Os números das partes listados na solicitação podem ser não consecutivos, mas devem estar em ordem crescente. O Object Storage Service (OSS) verifica sequencialmente a validade de cada parte e confere se cada uma, exceto a última, tem tamanho igual ou superior a 100 KB. Após validar todas as partes, o OSS as combina em um objeto completo.
O OSS leva algum tempo para processar uma solicitação CompleteMultipartUpload. Se o cliente for desconectado durante esse período, o serviço continuará a processar a solicitação.
Você pode fazer upload de um objeto executando várias tarefas com IDs de upload independentes. Quando uma tarefa de upload múltiplo é concluída, seu ID de upload torna-se inválido, mas os IDs das outras tarefas permanecem inalterados.
Permissões
Por padrão, uma conta Alibaba Cloud tem permissões totais. Usuários RAM ou funções RAM vinculados a essa conta não têm permissão por padrão. A conta Alibaba Cloud ou o administrador deve conceder as permissões de operação por meio de políticas do RAM ou Bucket Policy.
|
API |
Action |
Descrição |
|
CompleteMultipartUpload |
|
Mescla partes para formar um objeto. |
|
|
Necessária ao especificar tags de objeto via x-oss-tagging durante a mesclagem. |
Sintaxe
ossutil api complete-multipart-upload --bucket value --key value --upload-id value --complete-multipart-upload value [flags]
|
Parâmetro |
Tipo |
Descrição |
|
--bucket |
string |
Nome do bucket de destino do upload do objeto. |
|
--complete-all |
string |
Define se todas as partes enviadas com o ID de upload atual devem ser listadas. |
|
--complete-multipart-upload |
string |
Contêiner que armazena o conteúdo da solicitação CompleteMultipartUpload. |
|
--encoding-type |
string |
Tipo de codificação do nome do objeto na resposta. |
|
--forbid-overwrite |
string |
Determina se o comando complete-multipart-upload sobrescreve um objeto existente com o mesmo nome. |
|
--key |
string |
Caminho completo do objeto. |
|
--upload-id |
string |
ID da tarefa de upload multipart. |
O comando complete-multipart-upload corresponde à operação CompleteMultipartUpload. Para mais detalhes sobre os parâmetros dessa operação, consulte CompleteMultipartUpload.
--complete-multipart-upload
A opção --complete-multipart-upload aceita os formatos XML e JSON. Se o valor contiver o prefixo file://, as configurações serão lidas do arquivo de configuração.
-
Formato XML:
<CompleteMultipartUpload> <Part> <PartNumber>integer</PartNumber> <ETag>string</ETag> </Part> ... </CompleteMultipartUpload> -
Formato JSON:
{ "Part": [ { "PartNumber": integer, "ETag": "string" }, ... ] }
Para mais informações sobre as opções globais de linha de comando compatíveis, consulte Opções globais de linha de comando.
Exemplos
Os exemplos a seguir mostram como fazer upload do objeto exampleobject no bucket examplebucket usando upload multipart. O ID da tarefa é 123.
-
Crie um arquivo de configuração XML chamado complete-multipart-upload.xml e adicione o seguinte código:
<?xml version="1.0" encoding="UTF-8"?> <CompleteMultipartUpload> <Part> <PartNumber>1</PartNumber> <ETag>"C884BAB4F7A89D38A194568C7DE****"</ETag> </Part> <Part> <PartNumber>2</PartNumber> <ETag>"C884BAB4F7A89D38A194568C7DEA****"</ETag> </Part> </CompleteMultipartUpload>
Comando de exemplo:
ossutil api complete-multipart-upload --bucket examplebucket --key exampleobject --upload-id 123 --complete-multipart-upload file://complete-multipart-upload.xml
-
Crie um arquivo de configuração JSON chamado complete-multipart-upload.json e adicione o seguinte código:
{ "Part": [ { "PartNumber": "1", "ETag": "\"C884BAB4F7A89D38A194568C7DE****\"" }, { "PartNumber": "2", "ETag": "\"C884BAB4F7A89D38A194568C7DEA****\"" } ] }Comando de exemplo:
ossutil api complete-multipart-upload --bucket examplebucket --key exampleobject --upload-id 123 --complete-multipart-upload file://complete-multipart-upload.json -
Configure os parâmetros no comando abaixo usando o formato JSON:
ossutil api complete-multipart-upload --bucket examplebucket --key exampleobject --upload-id 123 --complete-multipart-upload file://complete-multipart-upload.json
O exemplo a seguir mostra como listar todas as partes enviadas com ID de upload 123 no bucket examplebucket:
ossutil api complete-multipart-upload --bucket examplebucket --key exampleobject --upload-id 123 --complete-all yes