Class: Pexels::Client::Response

Inherits:
Object
  • Object
show all
Defined in:
lib/pexels/client/response.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request, response) ⇒ Response

Returns a new instance of Response.



8
9
10
11
# File 'lib/pexels/client/response.rb', line 8

def initialize(request, response)
  @request = request
  @response = response
end

Instance Attribute Details

#requestObject (readonly)

Returns the value of attribute request.



6
7
8
# File 'lib/pexels/client/response.rb', line 6

def request
  @request
end

#responseObject (readonly)

Returns the value of attribute response.



6
7
8
# File 'lib/pexels/client/response.rb', line 6

def response
  @response
end

Instance Method Details

#bodyObject



13
14
15
16
17
18
# File 'lib/pexels/client/response.rb', line 13

def body
  JSON.parse(response.body)

rescue JSON::JSONError => exception
  raise Pexels::APIError.new(exception)
end

#headersObject



20
21
22
# File 'lib/pexels/client/response.rb', line 20

def headers
  response.headers
end

#ratelimit_remainingObject



24
25
26
# File 'lib/pexels/client/response.rb', line 24

def ratelimit_remaining
  headers['x-ratelimit-remaining']&.first&.to_i
end