对象存储服务 OBS-生成带授权信息的URL(Python SDK):请求参数

时间:2024-11-13 17:03:36

请求参数

表1 请求参数列表

参数名称

参数类型

是否必选

描述

method

str

必选

参数解释:

HTTP方法类型

取值范围:

  • GET
  • POST
  • PUT
  • DELETE
  • HEAD

默认取值:

bucketName

str

可选

参数解释

桶名。

约束限制:

  • 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。
  • 桶命名规则如下:
    • 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。
    • 禁止使用IP地址。
    • 禁止以“-”或“.”开头及结尾。
    • 禁止两个“.”相邻(如:“my..bucket”)。
    • 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。
  • 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。

默认取值:

objectKey

str

可选

参数解释:

对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。

例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。

取值范围:

长度大于0且不超过1024的字符串。

默认取值:

specialParam

str

可选

参数解释:

特殊操作符,代表要操作的子资源,

取值范围:

  • versions
  • uploads
  • location
  • storageinfo
  • quota
  • storagePolicy
  • acl
  • append
  • logging
  • policy
  • lifecycle
  • website
  • versioning
  • cors
  • notification
  • tagging
  • delete
  • restore

默认取值:

expires

int

可选

参数解释:

带授权信息的URL的过期时间。

取值范围:

大于等于0的整型数,单位:秒。

默认取值:

300秒

headers

dict

可选

参数解释:

请求中携带的头域。

默认取值:

queryParams

dict

可选

参数解释:

请求中携带的查询参数。

默认取值:

如果遇到跨域报错、签名不匹配问题,请参考以下步骤排查问题:

  1. 未配置跨域,需要在控制台配置CORS规则,请参考配置桶允许跨域请求
  2. 签名计算问题,请参考URL中携带签名排查签名参数是否正确;比如上传对象功能,后端将Content-Type参与计算签名生成授权URL,但是前端使用授权URL时没有设置Content-Type字段或者传入错误的值,此时会出现跨域错误。解决方案为:Content-Type字段前后端保持一致。
support.huaweicloud.com/sdk-python-devg-obs/obs_22_1301.html