Rails 阿里云 OSS

hxh1246996371 · 2015年04月28日 · 最后由 mark 回复于 2016年10月10日 · 4759 次阅读

我想使用阿里云的开放存储服务 OSS,不知道效果咋样,有谁用过的吗,而且我搞不清楚为什么没有 ruby 的 sdk

carrierwave-aliyun

#1 楼 @huacnlee 太好了 还是你写的

#1 楼 @huacnlee 冒昧问一句 有 DEMO 用法么

#4 楼 @Martin91

def test
    _connection = CarrierWave::Storage::Aliyun::Connection.new
    url = _connection.put("a.png", File.open("#{Rails.root}/1.png"))
    render json: true
end

这样写了一个 demo,但是报错了,咋回事啊

#1 楼 @huacnlee 发现问题了,是 _connection = CarrierWave::Storage::Aliyun::Connection.new 这一步出错了,但是我配置了 config/initializes/carrierwave.rb 啊,如果把这些配置主动传到 CarrierWave::Storage::Aliyun::Connection.new 方法里就没问题,是我用错了吗

#7 楼 @hxh1246996371 本来就是要传进去啊,你看 https://github.com/huacnlee/carrierwave-aliyun/blob/master/lib/carrierwave/storage/aliyun.rb#L13 ,要是不传,options 就是空的 hash,相当于甚么都没有配置。

而且你这里也没有用到 carrierwave,CarrierWave::Storage::Aliyun::Connection.new 是不需要显式调用的,它应该是由 carrierwave 自己负责初始化的。楼主应该是只需要处理文件上传而已吧?不需要绑定 ActiveRecord 的话,建议另外找下更接近 SDK 性质的 gem。

#8 楼 @Martin91 额 我是只需要上传文件而已 那我找找其他的

#9 楼 @hxh1246996371 我这里有差不多 10 几行上传阿里云的 sinatra 函数。要不要?

如果不需要 carrierwave 的话,可以用它

https://github.com/mangege/aliyun-oss-sdk-for-ruby

需要 登录 后方可回复, 如果你还没有账号请 注册新账号