版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
详细解答可以参考官方帮助文档
为了避免在项目中用到OSS Client的地方都要初始化,我们在项目中添加一个初始化文件,方便在项目中使用OSS Client:
# oss-manager/config/initializers/aliyun_oss_init.rbrequire 'aliyun/oss'module OSSdef self.clientunless @clientAliyun::Common::Logging.set_log_file('./log/oss_sdk.log')@client = Aliyun::OSS::Client.new(endpoint:Rails.application.secrets.aliyun_oss['endpoint'],access_key_id:Rails.application.secrets.aliyun_oss['access_key_id'],access_key_secret:Rails.application.secrets.aliyun_oss['access_key_secret'])end@clientendend
上面的代码在SDK的rails/目录下可以找到。这样初始化后,在项目中使用OSSClient就非常方便:
buckets = OSS.client.list_buckets
其中endpoint和AccessKeyId/AccessKeySecret保存在oss-manager/conf/secrets.yml中,例如:
development:secret_key_base: xxxxaliyun_oss:endpoint: xxxxaccess_key_id: aaaaaccess_key_secret: bbbb
保存代码: