Module: SparkPost::Request

Included in:
Transmission
Defined in:
lib/sparkpost/request.rb

Class Method Summary collapse

Class Method Details

.process_response(response) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/sparkpost/request.rb', line 26

def process_response(response)
  response = JSON.parse(response.body)
  if response['errors']
    fail SparkPost::DeliveryException, response['errors']
  else
    response['results']
  end
end

.request(url, api_key, data) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/sparkpost/request.rb', line 10

def request(url, api_key, data)
  uri = URI.parse(url)
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true
  http.set_debug_output($stdout)
  headers = {
      'User-Agent' => 'ruby-sparkpost/' + VERSION,
      'Content-Type' => 'application/json',
      'Authorization' => api_key
  }
  req = Net::HTTP::Post.new(uri.path, initheader=headers)
  req.body = data.to_json

  process_response(http.request(req));
end