Method: ConvertApi::Client#upload

Defined in:
lib/convert_api/client.rb

#upload(io, filename) ⇒ Object



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/convert_api/client.rb', line 48

def upload(io, filename)
  handle_response do
    request_uri = base_uri.path + 'upload'
    encoded_filename = URI.encode(filename)

    headers = DEFAULT_HEADERS.merge(
      'Content-Type' => 'application/octet-stream',
      'Transfer-Encoding' => 'chunked',
      'Content-Disposition' => "attachment; filename*=UTF-8''#{encoded_filename}",
    )

    request = Net::HTTP::Post.new(request_uri, headers)
    request.body_stream = io

    http(read_timeout: config.upload_timeout).request(request)
  end
end