class ActiveCampaignRb::Faraday::Middleware::Response

Gem specific response middleware for Faraday

@author Mikael Henriksson <mikael@mhenrixon.com>

Public Instance Methods

debug(env) click to toggle source
# File lib/active_campaign_rb/faraday/middleware/response.rb, line 35
def debug(env)
  formatter.request(env)
  formatter.response(env)
end
formatter() click to toggle source
# File lib/active_campaign_rb/faraday/middleware/response.rb, line 40
def formatter
  @formatter ||= ::Faraday::Logging::Formatter.new(
    logger: LOGGER,
    options: { headers: true, bodies: true }
  )
end
on_complete(env) click to toggle source

Override this to modify the environment after the response has finished. Calls the ‘parse` method if defined

# File lib/active_campaign_rb/faraday/middleware/response.rb, line 23
def on_complete(env)
  env.body = parse(env.body)
  debug(env) if ActiveCampaignRb.config.debug?
end
parse(body) click to toggle source
# File lib/active_campaign_rb/faraday/middleware/response.rb, line 28
def parse(body)
  return body if body.to_s.empty?

  body = ::Oj.load(body, mode: :compat)
  transform_keys(body, :underscore)
end