2017-11-28 13 views
0

안개를 사용하여 파일을 업로드하고 다운로드 할 때 몇 가지 다른 방법이 있습니다. 무엇이 선호 되는가 또는 심지어 중요합니까? 얻기 위해 'WB'에 파일 옵션을 변경안개를 사용하여 파일 업로드 및 다운로드

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) 

나는 단지 하나의 예를 다운로드

하지만, 필요에 업로드

는 작동합니다 :

다운로드

File.open(Rails.root.join(file.key), 'wb') do |local_file| 
    local_file.write(file.body) 
end 

답변

0

좋은 질문입니다.

버전은 덮개 아래에 connection.put_object으로 전화를 걸므로 기능적으로는 기본 사용법과 동일해야합니다. 즉, directory.files.create은 (많은 경우) 사용중인 저장소 공급자를 변경하고 "올바르게 작동하는"서비스를 제공 할 수 있으므로 (해당 공급자에 대한 업로드 방법이 상당히 달라 보이더라도) 선호되는 옵션입니다.

다운로드 측에서 객체에 대한 참조를 얻으려면 대 connection.get_object 유형별 유사가 있어야합니다. directory 버전을 원할 경우 body 메서드를 호출하면 필요에 따라 내용을 제공해야합니다.

희망을 명확히합니다.