Method: Zold::Http#get_file

Defined in:
lib/zold/http.rb

#get_file(file) ⇒ Object



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# File 'lib/zold/http.rb', line 122

def get_file(file)
  File.open(file, 'w') do |f|
    request = Typhoeus::Request.new(
      @uri,
      accept_encoding: 'gzip',
      headers: headers,
      connecttimeout: CONNECT_TIMEOUT
    )
    request.on_body do |chunk|
      f.write(chunk)
    end
    request.run
    response = new HttpResponse(request)
    raise "Invalid response code #{response.status}" unless response.status == 200
    response
  end
rescue StandardError => e
  HttpError.new(e)
end