Cette opération permet de configurer le paiement par le demandeur pour un bucket.
Notes d'utilisation
Tenez compte des points suivants lors de la configuration du paiement par le demandeur pour un bucket :
-
L'accès par les utilisateurs anonymes est refusé
Si vous activez le paiement par le demandeur pour un bucket, les utilisateurs anonymes ne peuvent pas y accéder. Les demandeurs doivent fournir des informations d'authentification à OSS afin qu'OSS puisse les identifier et leur facturer les requêtes et le trafic généré.
Si un demandeur endosse un rôle RAM d'un compte Alibaba Cloud pour demander des données, OSS facture les requêtes envoyées par ce demandeur ainsi que le trafic généré au compte Alibaba Cloud concerné.
-
Les demandeurs doivent spécifier l'en-tête x-oss-request-payer dans la requête
Si vous activez le paiement par le demandeur pour un bucket, les demandeurs doivent inclure l'en-tête x-oss-request-payer:requester dans leurs requêtes POST, GET ou HEAD. Cet en-tête indique que les demandeurs acceptent d'être facturés pour les requêtes et les données téléchargées. Si un demandeur n'inclut pas l'en-tête x-oss-request-payer dans les requêtes adressées à un bucket avec le paiement par le demandeur activé, l'authentification échoue.
Les propriétaires de bucket n'ont pas besoin de spécifier l'en-tête x-oss-request-payer dans les requêtes qu'ils envoient pour accéder à leurs propres buckets. Dans ce cas, les propriétaires de bucket sont facturés pour les requêtes qu'ils envoient et pour le trafic généré.
Structure de la requête
PUT /?requestPayment HTTP/1.1
Date: GMT Date
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<RequestPaymentConfiguration>
<Payer>Requester</Payer>
</RequestPaymentConfiguration>
En-têtes de requête
Les requêtes PutBucketRequestPayment contiennent uniquement des en-têtes de requête communs. Pour plus d'informations, consultez la section En-têtes de requête communs.
Éléments de requête
|
Élément |
Type |
Obligatoire |
Description |
|
RequestPaymentConfiguration |
Conteneur |
Oui |
Conteneur qui stocke les configurations de paiement par le demandeur. Nœud enfant : Payer |
|
Payer |
Chaîne |
Oui |
Entité responsable du paiement des frais de requête et de trafic. Valeurs valides :
Nœud parent : RequestPaymentConfiguration |
En-têtes de réponse
Les réponses aux requêtes PutBucketRequestPayment contiennent uniquement des en-têtes de réponse communs. Pour plus d'informations, consultez la section En-têtes de réponse communs.
Exemples
Exemple de requête
PUT /?requestPayment
Content-Length: 83
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Thu, 17 Apr 2025 01:33:47 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
<RequestPaymentConfiguration>
<Payer>Requester</Payer>
</RequestPaymentConfiguration>
Exemple de réponse
200 (OK)
content-length: 0
x-oss-request-id: 5D3663FBB007B79097FC****
date: Tue, 23 Jul 2019 01:33:47 GMT
SDK OSS
Vous pouvez utiliser les SDK OSS pour les langages de programmation suivants afin d'appeler l'opération PutBucketRequestPayment :
ossutil
Pour obtenir des informations sur la commande ossutil correspondant à l'opération PutBucketRequestPayment, consultez la section put-bucket-request-payment.
Codes d'erreur
|
Code d'erreur |
Code d'état HTTP |
Description |
|
NoSuchBucket |
404 |
Ce message d'erreur indique que le bucket spécifié n'existe pas. |