之前看有朋友有类似需求,于是,最近抽时间做了下,按照官方文档实现了基本功能。 代码地址:https://github.com/wikimo/ruby-form-for-upyun
通过@huacnlee的提醒,发现思路有问题,我又重新调整了下,新的代码地址:https://github.com/wikimo/upyun-form-sdk
Faraday 的使用感觉是复制来的:)
写得很清晰
#2 楼 @alsotang 居然被发现了,确实是别的地方复制来的。
额… 又拍云提供的 Form 上传主要是为了避免上传文件经过服务端。
这样以来可以通过 Form 直接提交到又拍的服务器。减少 User -> App Server -> UpYun 中间多余的转发。
而楼主这个实现又把这个功能做成了得通过服务端。
那完全可以直接使用普通的 API 接口,而这种早已有了实现 https://github.com/nowa/carrierwave-upyun
#4 楼 @huacnlee 赞
@huacnlee 我发现自己犯了低级错误。其实原理我清楚,但是做成这样的 gem,文件还是得先到服务端才行,又绕回老路了,尽快上传部分是模拟了表单,受教了。这个使用场景似乎不太适合写成 gem,而是写个 demo 更适合些。