class AWS::Core::Http::HTTPartyHandler


)
)
:http_proxyport => 80
:http_proxyaddr => “myproxy.com”,
:http_handler => AWS::Http::HTTPartyHandler.new(
AWS.config(
proxy:
to send extra options to HTTParty, for example to enable an HTTP
it. However, you can directly instantiate this class in order
handler, so you don’t need to do anything special to configure
Makes HTTP requests using HTTParty. This is the default

def handle(request, response)

def handle(request, response)
  opts = default_request_options.merge({
    :body => request.body,
    :parser => NoOpParser
  })
  if request.proxy_uri
    opts[:http_proxyaddr] = request.proxy_uri.host
    opts[:http_proxyport] = request.proxy_uri.port
  end
  if request.use_ssl?
    url = "https://#{request.host}:443#{request.uri}"
    opts[:ssl_ca_file] = request.ssl_ca_file if
      request.ssl_verify_peer?
  else
    url = "http://#{request.host}#{request.uri}"
  end
  # get, post, put, delete, head
  method = request.http_method.downcase
  # Net::HTTP adds this header for us when the body is
  # provided, but it messes up signing
  headers = { 'content-type' => '' }
  # headers must have string values (net http calls .strip on them)
  request.headers.each_pair do |key,value|
    headers[key] = value.to_s
  end
  opts[:headers] = headers
  begin
    http_response = self.class.send(method, url, opts)
  rescue Timeout::Error, Errno::ETIMEDOUT => e
    response.timeout = true
  else
    response.body = http_response.body
    response.status = http_response.code.to_i
    response.headers = http_response.to_hash
  end
end

def initialize options = {}

Parameters:
  • options (Hash) -- Default options to send to HTTParty on
def initialize options = {}
  @default_request_options = options
end