Rails 阿里云 OSS

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

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

共收到 16 条回复
De6df3

carrierwave-aliyun

10401

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

10401

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

10401

#4楼 @Martin91 谢了 我试试

10401

#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,但是报错了,咋回事啊

10401

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

4755

#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。

10401

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

14358

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

10401

#10楼 @est 贴出来看看啊

De6df3

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

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

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