Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
PutObject (API SOAP)
Note
Les SOAP API pour Amazon S3 ne sont pas disponibles pour les nouveaux clients. Leur fin de vie est prévue le 31 août 2025. Nous vous recommandons d'utiliser l'API REST ou les AWS SDK.
L'PutObjectopération ajoute un objet à un compartiment. Les données de l'objet sont jointes en tant que pièce jointe DIME.
Pour vous assurer qu'un objet n'est pas endommagé sur le réseau, vous pouvez calculer le MD5 d'un objet, le placer dans Amazon S3 et comparer l'Etag renvoyé à la valeur MD5 calculée.
Si un objet existe déjà dans un compartiment, le nouvel objet le remplacera car Amazon S3 stocke la dernière demande d'écriture. Amazon S3 est toutefois un système distribué. Si Amazon S3 reçoit plusieurs demandes d'écriture pour le même objet presque simultanément, il est possible que tous les objets soient stockés, même si un seul gagne au final. Amazon S3 ne fournit pas de verrouillage des objets ; si vous en avez besoin, assurez-vous de l'intégrer à votre couche d'application.
Exemple
Cet exemple place certaines données et métadonnées dans l'objet « Nelson » du compartiment « quotes », permet à un utilisateur (généralement le propriétaire) d'FULL_CONTROLaccéder à l'objet et le rend lisible par des personnes anonymes. Dans cet exemple, la pièce jointe réelle n'est pas affichée.
Sample Request
<PutObject xmlns="https://doc.s3.amazonaws.com/2006-03-01"> <Bucket>quotes</Bucket> <Key>Nelson</Key> <Metadata> <Name>Content-Type</Name> <Value>text/plain</Value> </Metadata> <Metadata> <Name>family</Name> <Value>Muntz</Value> </Metadata> <ContentLength>5</ContentLength> <AccessControlList> <Grant> <Grantee xsi:type="CanonicalUser"> <ID>a9a7b886d6241bf9b1c61be666e9</ID> <DisplayName>chriscustomer</DisplayName> </Grantee> <Permission>FULL_CONTROL</Permission> </Grant> <Grant> <Grantee xsi:type="Group"> <URI>http://acs.amazonaws.com/groups/global/AllUsers<URI> </Grantee> <Permission>READ</Permission> </Grant> </AccessControlList> <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId> <Timestamp>2007-05-11T12:00:00.183Z</Timestamp> <Signature>Iuyz3d3P0aTou39dzbqaEXAMPLE=</Signature> </PutObject>
Sample Response
<PutObjectResponse xmlns="https://s3.amazonaws.com/doc/2006-03-01"> <PutObjectResponse> <ETag>"828ef3fdfa96f00ad9f27c383fc9ac7f"</ETag> <LastModified>2006-03-01T12:00:00.183Z</LastModified> </PutObjectResponse> </PutObjectResponse>
Eléments
Bucket:Le compartiment dans lequel ajouter l'objet.Key:La touche à attribuer à l'objet.Metadata:Vous pouvez fournir des paires de métadonnées nom-valeur dans l'élément de métadonnées. Ils seront stockés avec l'objet.ContentLength:Longueur des données en octets.AccessControlList:Une liste de contrôle d'accès pour la ressource. Cet élément est facultatif. En cas d'omission, le demandeur aFULL_CONTROLaccès à l'objet. Si l'objet existe déjà, la politique de contrôle d'accès préexistante est remplacée.
Réponses
ETag:La balise d'entité est un hachage MD5 de l'objet que vous pouvez utiliser pour effectuer des extractions conditionnelles de l'objet.GetObjectExtendedL'ETag reflète uniquement les modifications apportées au contenu d'un objet, pas à ses métadonnées.LastModified:L'horodatage Amazon S3 de l'objet enregistré.
Contrôle d’accès
Pour placer des objets dans un seau, vous devez avoir WRITE accès au seau.