Charge une partie vers un objet spécifié en utilisant l'ID de chargement renvoyé par InitiateMultipartUpload.
Remarques d'utilisation
Avant d'appeler UploadPart, appelez InitiateMultipartUpload pour obtenir un ID de chargement depuis OSS.
Si vous chargez une nouvelle partie avec le même partNumber, la partie existante est écrasée.
OSS inclut le hachage MD5 de chaque partie reçue dans l'en-tête ETag de la réponse.
Si vous spécifiez l'en-tête x-oss-server-side-encryption dans InitiateMultipartUpload, chaque partie chargée est chiffrée. La réponse inclut l'en-tête x-oss-server-side-encryption indiquant l'algorithme de chiffrement. Pour plus d'informations, consultez InitiateMultipartUpload.
Permissions
Par défaut, un compte Alibaba Cloud dispose de toutes les autorisations. Les utilisateurs RAM ou les rôles RAM associés à un compte Alibaba Cloud ne disposent d'aucune autorisation par défaut. Le compte Alibaba Cloud ou l'administrateur du compte doit accorder les autorisations d'opération via des stratégies RAM ou une Bucket Policy.
|
API |
Action |
Description |
|
UploadPart |
|
Charge des parties. |
Syntaxe de la requête
PUT /ObjectName?partNumber=PartNumber&uploadId=UploadId HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Content-Length: Size
Authorization: SignatureValue
En-têtes de requête
Tous les en-têtes d'une requête UploadPart sont des en-têtes de requête communs. Pour plus d'informations, consultez En-têtes de requête communs.
Éléments de requête
|
Élément |
Type |
Obligatoire |
Exemple |
Description |
|
partNumber |
Entier positif |
Oui |
1 |
Numéro de la partie. Valeurs valides : 1 à 10000. La taille d'une partie varie de 100 Ko à 5 Go. Remarque
Chaque partie, sauf la dernière, doit faire au moins 100 Ko. Les tailles des parties ne sont pas vérifiées lors de l'appel à UploadPart car OSS ne peut pas déterminer quelle partie est la dernière. La vérification de la taille a lieu lorsque vous appelez CompleteMultipartUpload. |
|
uploadId |
Chaîne |
Oui |
0004B9895DBBB6EC9**** |
ID qui identifie l'objet auquel appartiennent les parties à charger. |
En-têtes de réponse
|
En-tête |
Type |
Exemple |
Description |
|
Content-MD5 |
Chaîne |
1B2M2Y8AsgTpgAmY7PhC**** |
Hachage MD5 de la partie. Important
Le hachage MD5 de la partie est obtenu après que le client a chargé l'objet. Il ne s'agit pas du hachage MD5 présent dans le corps de la réponse. |
|
x-oss-hash-crc64ecma |
Chaîne |
316181249502703**** |
Valeur CRC-64 de la partie. |
La réponse inclut également des en-têtes communs tels que Date et x-oss-request-id. En-têtes HTTP communs.
Exemples
Exemple de requête
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]
Exemple de réponse
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
Kits SDK OSS
Kits SDK OSS prenant en charge UploadPart :
ossutil
Pour obtenir des informations sur la commande ossutil correspondant à l'opération UploadPart, consultez upload-part.
Codes d'erreur
|
Code d'erreur |
Code d'état HTTP |
Description |
|
NoSuchUpload |
404 |
L'ID de chargement multipartie spécifié n'existe pas. |
|
InvalidArgument |
400 |
Le numéro de partie n'est pas compris entre 1 et 10000. |
|
InvalidDigest |
400 |
La valeur Content-MD5 de la requête ne correspond pas au hachage MD5 calculé par OSS. Pour éviter les erreurs de transmission, vous pouvez inclure Content-MD5 dans la requête. OSS calcule le hachage MD5 des données chargées et le compare à la valeur Content-MD5. Une incompatibilité indique une erreur de transmission des données. |