Method: Sinew::Request#perform

Defined in:
lib/sinew/request.rb

#performObject

run the request, return the result



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/sinew/request.rb', line 36

def perform
  validate!

  party_options = options.dup

  # merge proxy
  if proxy = self.proxy
    addr, port = proxy.split(':')
    party_options[:http_proxyaddr] = addr
    party_options[:http_proxyport] = port || 80
  end

  # now merge runtime_options
  party_options = party_options.merge(sinew.runtime_options.httparty_options)

  # merge headers
  headers = sinew.runtime_options.headers
  headers = headers.merge(party_options[:headers]) if party_options[:headers]
  party_options[:headers] = headers

  party_response = HTTParty.send(method, uri, party_options)
  Response.from_network(self, party_response)
end