Faz o upload de uma parte para um objeto especificado usando o ID de upload retornado por InitiateMultipartUpload.
Observações de uso
Antes de chamar UploadPart, chame InitiateMultipartUpload para obter um ID de upload do OSS.
Ao fazer o upload de uma nova parte com o mesmo partNumber, a parte existente será sobrescrita.
O OSS inclui o hash MD5 de cada parte recebida no cabeçalho ETag da resposta.
Caso você especifique o cabeçalho x-oss-server-side-encryption em InitiateMultipartUpload, cada parte enviada será criptografada. A resposta incluirá o cabeçalho x-oss-server-side-encryption indicando o algoritmo de criptografia. Para mais informações, consulte InitiateMultipartUpload.
Permissões
Por padrão, uma conta Alibaba Cloud possui permissões totais. Usuários RAM ou funções RAM vinculados a uma conta Alibaba Cloud não têm permissões por padrão. A conta Alibaba Cloud ou o administrador da conta deve conceder as permissões de operação por meio de políticas do RAM ou Bucket Policy.
|
API |
Action |
Descrição |
|
UploadPart |
|
Faz o upload de partes. |
Sintaxe da solicitação
PUT /ObjectName?partNumber=PartNumber&uploadId=UploadId HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Content-Length: Size
Authorization: SignatureValue
Cabeçalhos da solicitação
Todos os cabeçalhos em uma solicitação UploadPart são cabeçalhos comuns de solicitação. Para mais informações, consulte Cabeçalhos comuns de solicitação.
Elementos da solicitação
|
Elemento |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
partNumber |
Inteiro positivo |
Sim |
1 |
Número da parte. Valores válidos: 1 a 10000. O tamanho de uma parte varia de 100 KB a 5 GB. Nota
Exceto pela última, cada parte deve ter pelo menos 100 KB. O OSS não verifica o tamanho das partes durante o UploadPart porque não consegue determinar qual é a última parte. A verificação de tamanho ocorre quando você chama CompleteMultipartUpload. |
|
uploadId |
String |
Sim |
0004B9895DBBB6EC9**** |
ID que identifica o objeto ao qual as partes enviadas pertencem. |
Cabeçalhos da resposta
|
Cabeçalho |
Tipo |
Exemplo |
Descrição |
|
Content-MD5 |
String |
1B2M2Y8AsgTpgAmY7PhC**** |
Hash MD5 da parte. Importante
O hash MD5 da parte é obtido após o cliente fazer o upload do objeto. Não se trata do hash MD5 presente no corpo da resposta. |
|
x-oss-hash-crc64ecma |
String |
316181249502703**** |
Valor CRC-64 da parte. |
A resposta também inclui cabeçalhos comuns, como Date e x-oss-request-id. Cabeçalhos HTTP comuns.
Exemplos
Exemplo de solicitação
PUT /multipart.data?partNumber=1&uploadId=0004B9895DBBB6EC9**** HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Content-Length: 6291456
Date: Wed, 22 Feb 2012 08:32:21 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
[6291456 bytes data]
Exemplo de resposta
HTTP/1.1 200 OK
Server: AliyunOSS
Content-length: 0
Connection: keep-alive
ETag: "7265F4D211B56873A381D321F586****"
x-oss-request-id: 3e6aba62-1eae-d246-6118-8ff42cd0****
Date: Wed, 22 Feb 2012 08:32:21 GMT
Content-MD5: 1B2M2Y8AsgTpgAmY7Ph****
x-oss-hash-crc64ecma: 316181249502703****
x-oss-server-time: 77
SDKs do OSS
SDKs do OSS compatíveis com UploadPart:
ossutil
Para obter informações sobre o comando do ossutil correspondente à operação UploadPart, consulte upload-part.
Códigos de erro
|
Código de erro |
Código de status HTTP |
Descrição |
|
NoSuchUpload |
404 |
O ID de upload multipart especificado não existe. |
|
InvalidArgument |
400 |
O número da parte está fora do intervalo de 1 a 10000. |
|
InvalidDigest |
400 |
O valor Content-MD5 na solicitação não corresponde ao hash MD5 calculado pelo OSS. Para evitar erros de transmissão, inclua Content-MD5 na solicitação. O OSS calcula o hash MD5 dos dados enviados e o compara com o valor Content-MD5. Uma incompatibilidade indica erro na transmissão dos dados. |