PutBucketRequestPayment介面用於佈建要求者付費模式。
注意事項
使用要求者付費模式時,有如下注意事項:
不允許匿名訪問
如果您在Bucket上啟用了要求者付費模式,則不允許匿名訪問該Bucket。請求方必須提供身分識別驗證資訊,以便OSS能夠識別請求方,從而對請求方而非Bucket擁有者收取請求所產生的費用。
當要求者是通過扮演阿里雲RAM角色來請求資料時,該角色所屬的賬戶將為此請求付費。
申請方需攜帶x-oss-request-payer資訊
如果您在Bucket上啟用了要求者付費模式,請求方必須在其請求中包含x-oss-request-payer:requester(在POST、GET和HEAD請求的Header資訊中),以表明請求方已知悉請求和資料下載將產生費用。否則,請求方無法通過驗證。
資料擁有者訪問該Bucket時,可以不攜帶x-oss-request-payer要求標頭。資料擁有者作為要求者訪問該Bucket時,請求產生的費用由資料擁有者(也是要求者)來支付。
請求文法
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>
要求標頭
此介面僅使用公用要求標頭部,詳情請參見公用要求標頭(Common Request Headers)。
請求元素
名稱 | 類型 | 是否必選 | 描述 |
RequestPaymentConfiguration | 容器 | 是 | 請求付費配置的容器。 子節點:Payer |
Payer | 字串 | 是 | 指定Bucket付費類型。 取值:
父節點:RequestPaymentConfiguration |
回應標頭
此介面僅返回公用回應標頭部,詳情請參見公用回應標頭(Common Response Headers)。
樣本
請求樣本
PUT /?requestPayment
Content-Length: 83
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 23 Jul 2019 01:33:47 GMT
Authorization: OSS qn6q**************:77Dv****************
<RequestPaymentConfiguration>
<Payer>Requester</Payer>
</RequestPaymentConfiguration>
返回樣本
200 (OK)
content-length: 0
x-oss-request-id: 5D3663FBB007B79097FC****
date: Tue, 23 Jul 2019 01:33:47 GMT
SDK
錯誤碼
錯誤碼 | HTTP 狀態代碼 | 描述 |
NoSuchBucket | 404 | 訪問的Bucket不存在。 |