对象存储ZOS是一种海量、无限容量、廉价、高可用且可以远程访问的存储服务。用户开通对象存储服务后,可以根据需要获得一个容量可伸缩的存储空间,并只需为真正使用的资源付费。
一般来说,bucket所有者支付与bucket相关的所有存储和数据请求的费用。然而,bucket所有者可以将bucket配置为请求者付费。使用请求者付费,这时是请求者而不是bucket所有者支付请求费用和下载数据的传输费用。通常,当您希望共享数据,但不产生与访问数据的其他人相关联的费用时,您可以将存储桶配置为请求者支付。通常在参考数据、地理空间信息或web爬虫数据等场景下,您可以使用请求者付费,为存储桶开启请求者付费。
您可以通过sdk为名下的存储桶开启请求者付费,以python接口为例,ZOS对象存储提供了put_bucket_request_payment接口用于设置存储桶请求者策略,提供了get_bucket_request_payment接口用于获取存储桶的请求者策略。示例如下:
res1 = s3_client.put_bucket_request_payment(
Bucket=’string’,
RequestPaymentConfiguration={
‘Payer’: ‘Requester’ | ‘BucketOwner’
}
)
res2 = s3_client.get_bucket_request_payment(
Bucket=’string’
)
请求参数如下:
参数 | 描述 | 是否必须 |
Bucket | 用户名下的存储桶名 | 是 |
RequestPaymentConfiguration | 存储桶请求者策略 | 是 |
用户在存储桶请求者策略中指定Payer为Requester即表示请求者付费。设置之后,用户可以使用get_bucket_request_payment接口去查询。