Class: Slack::Http::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/slack/http/connection.rb

Class Method Summary collapse

Class Method Details

.request(url, payload) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/slack/http/connection.rb', line 15

def self.request(url, payload)
  uri = URI.parse(url)
  req = Net::HTTP::Post.new(uri.path)
  req.set_form_data(payload: payload.to_json)
  res = Net::HTTP.start(uri.host, uri.port,
                        use_ssl: uri.scheme == 'https') { |http|
    http.open_timeout = 5
    http.read_timeout = 5
    http.request(req)
  }
  res
end

.send(url, payload) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/slack/http/connection.rb', line 4

def self.send(url, payload)
  if url.nil? || payload.nil? || payload.empty?
    msg = 'error: url or payload is nil.'
    return Result.new(msg: msg)
  end

  res = request(url, payload)
  Result.new(code: res.code, msg: res.message,
             header: res.header, body: res.body)
end