Closed yanchengv closed 6 years ago
@yanchengv
不知道你的场景是什么,但是我猜想一下哈,可能是通过表单上传的文件,需要保存到七牛云存储。 如果是这样的,那么其实不需要先下载到本地,然后再上传。
因为当你指定form的enctype
属性为multipart/form-data
时,在rails controller
对应的action
中收到的file域的参数为:
{"img_url"=>#<ActionDispatch::Http::UploadedFile:0x007f64de7b8208 @tempfile=#<Tempfile:/tmp/RackMultipart20180928-17986-w75me9.png>, @original_filename="Selection_007.png", @content_type="image/png", @headers="Content-Disposition: form-data; name=\"img_url\"; filename=\"Selection_007.png\"\r\nContent-Type: image/png\r\n">, "file_id"=>"0"}
看到这个class没,ActionDispatch::Http::UploadedFile
,我们来翻阅一下API 文档
对,我们直接把params[:img_url].tempfile
或者params[:img_url].to_io
当作待上传的文件就可以了。
如有错误,请指正,thanks.
@mumuxizzz 试了传入 params[:img_url].tempfile
,你的方案可以。多谢!
@mumuxizzz 试了传入
params[:img_url].tempfile
,你的方案可以。多谢!
不客气的😊
文件不需要上传服务器,接受二进制流的接口的接口有吗?