华为云对象存储OBS如何获取对象URL?_云淘科技

通过设置对象ACL将桶中的对象权限设置为匿名用户读取权限后,可通过对象的URL直接下载该对象。获取对象URL的方式如下:

方式一,接口查询,调用ObsClient.putContent或ObsClient.putFile上传对象后会返回PutContentResponse对象,通过调用该对象的objectUrl接口可获取上传对象的URL。示例代码如下:

# 引入模块
from obs import ObsClient

# 创建ObsClient实例
obsClient = ObsClient(
    access_key_id='*** Provide your Access Key ***',    
    secret_access_key='*** Provide your Secret Key ***',    
    server='https://your-endpoint'
)
resp = obsClient.putContent('bucketname', 'objectname', content='Hello OBS')
     
if resp.status < 300:
    print('requestId:', resp.requestId)
    print('objectUrl:', resp.body.objectUrl)
else:
    print('requestId:', resp.requestId)
    print('errorCode:', resp.errorCode)

方式二,按https://桶名.域名/文件夹目录层级/对象名的方式进行拼接。

如果该对象存在于桶的根目录下,则链接地址将不需要有文件夹目录层级。
各区域对应的域名可以从这里的终端节点查看。
例如需访问区域为“华北-北京四”的桶名为“testbucket”中“test”文件夹下对象名为“test.txt”的对象,则该对象的URL为https://testbucket.obs.cn-north-4.myhuaweicloud.com/test/test.txt。

父主题: 常见问题

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家