场景: 我把一个图片的读写权限从公共读修改成了私有读。
我需要获取图片私有读的url地址,怎么获取?
我使用sdk包中generatePresignedUrl获取url地址和私有的对不上,请问还有别的方法可以获取到吗?
可以检查一下参数是否正确设置,例如:
可以试试看使用SDK提供的 signUrl方法:Java SDK,我记得可以使用 signUrl 方法生成一个有限时效的带签名的URL地址,该URL地址可以用于访问OSS的私有资源。
在OSS 控制台找到你的目标图片,单击对应的 获取地址 链接,会弹出对话框提供访问该文件的URL地址。如您的bucket的读写权限为 私有,则在您获取文件访问URL时需设置链接有效时间。
单击目标文件对应的 获取地址 链接,会弹出对话框提供访问该文件的URL地址
在阿里云 OSS 中将图片的读写权限从公共读修改成私有读后,你需要使用签名 URL 获取图片的私有读 URL 地址。签名 URL 可以在特定时间内让用户访问私有文件,而不需要将文件设置为公共读或公共写。
你可以按照以下步骤获取 OSS 中图片的私有读 URL 地址:
登录阿里云控制台,进入 OSS 控制台。
找到你要访问的 OSS bucket 和图片对象,并点击该对象。
在“对象摘要”页面中,单击“复制 URL”按钮,将图片的地址复制到剪贴板中。
在你的代码中添加如下签名URL的方式,替换掉URL中的your_access_key_id
和your_access_key_secret
即可。
https://your_bucket_name.oss-cn-hangzhou.aliyuncs.com/your_object_name?Expires=1552585539&OSSAccessKeyId=your_access_key_id&Signature=your_signature
其中:
your_bucket_name
: 你的 OSS 存储空间名称。your_object_name
: 你私有读对象的名称,需要包括路径和文件名。your_access_key_id
: 你的阿里云 AccessKey ID。your_access_key_secret
: 你的阿里云 AccessKey Secret。Expires
: 签名 URL 的过期时间,以 Unix 时间戳表示。Signature
: 签名参数,需要使用你的阿里云 AccessKey Secret 计算签名。在浏览器中通过该URL地址访问文件时,将根据签名 URL 结构中的签名参数对请求进行验证,确保用户具有访问资源的权限。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
对象存储 OSS 是一款安全、稳定、高性价比、高性能的云存储服务,可以帮助各行业的客户在互联网应用、大数据分析、机器学习、数据归档等各种使用场景存储任意数量的数据,以及进行任意位置的访问,同时通过丰富的数据处理能力更便捷地使用数据。