[英]Uploading and Downloading Files using fog
使用Fog上载和下载文件时,我已经看到了几种不同的方法。 首选哪个,甚至有关系?
上传
directory.files.create(key: local_filename,
body: File.open(local_path),
public: false)
要么
connection.put_object(directory.key,
local_filename,
File.open(local_path),
public: false)
对于下载,我只有一个示例,但是需要将文件选项更改为'wb'才能起作用:
下载
File.open(Rails.root.join(file.key), 'wb') do |local_file|
local_file.write(file.body)
end
好问题。
directory.files.create
版本最终在幕后调用connection.put_object
,因此从功能上讲,它们在基本用法上应等效。 话虽这么说, directory.files.create
是首选选项,因为它使您(在许多情况下)可以更改正在使用的存储提供程序并使事情“正常”(即使在该提供程序上进行上传的方法看起来大不相同) )。
在下载方面,应该有一个相似的directory.files.get
与connection.get_object
类型区别,以获取对该对象的引用。 您需要directory
版本,然后像您一样调用body
方法,应根据需要提供要处理的内容。
希望能澄清。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.