0

Google Ruby API Client を使用して Google Drive ファイルをダウンロードしています (downloadUrl を使用)。ファイルを正常にダウンロードできましたが、次に、Web ユーザーにファイルをローカル (選択した場所) に保存するように求めたいと思います。それを達成するには、以下のコードの後に​​何をすればよいですか?

client = Google::APIClient.new
drive = client.discovered_api('drive', 'v2')

client.authorization.client_id = ENV["GOOGLE_CLIENT_ID"]
client.authorization.client_secret = ENV["GOOGLE_CLIENT_SECRET"]
client.authorization.redirect_uri = '...'
client.authorization.access_token = '...'

client.authorization.scope = https://www.googleapis.com/auth/drive
result = client.execute(
  :api_method => drive.files.get,
  :version => 'v2',
  :parameters => { 'fileId' => "..."}
)

download_url = result.data.downloadUrl

if download_url
  fileResult = client.execute(:uri => download_url)
else 
  #HANDLE ERRORS
  ....
end 

# WHAT TO ADD HERE TO PROMPT USER TO SAVE THE FILE LOCALLY?
4

1 に答える 1

0

最初にファイルを保存せずにこれをやりたいと質問で言ったはずです。また、私の質問の一部は、ダウンロード応答から必要な情報を取得する方法だけでした. これが私が思いついたもので、うまくいきました:

    send_data fileResult.body,  
              :disposition => fileResult.response.env[:response_headers]["content-disposition"], 
              :type => fileResult.response.env[:response_headers]["content-type"]
于 2013-11-14T22:09:51.670 に答える