Module: Fileio

Defined in:
lib/fileio.rb,
lib/fileio/version.rb

Constant Summary collapse

VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.upload(path, expires: nil) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/fileio.rb', line 7

def self.upload(path, expires: nil)
  url = "https://file.io"
  if expires
    url += "?expires=#{expires}"
  end

  uri = URI.parse(url)
  request = Net::HTTP::Post.new(uri)
  form_data = [['file', File.open(path, "rb")]] # or File.open() in case of local file

  request.set_form form_data, 'multipart/form-data'
  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http| # pay attention to use_ssl if you need it
    http.request(request)
  end

  JSON.parse(response.body).tap do |result|
    puts result["link"]
  end
end