Module: FaradayMiddleware::Reddit::ModhashHelpers

Included in:
Authentication, Modhash
Defined in:
lib/faraday_middleware/reddit/helpers/modhash.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



6
7
8
9
10
# File 'lib/faraday_middleware/reddit/helpers/modhash.rb', line 6

def self.included(base)
  base.dependency do
    require 'json' unless defined?(::JSON)
  end
end

Instance Method Details

#extract_modhash(env) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/faraday_middleware/reddit/helpers/modhash.rb', line 12

def extract_modhash(env)
  return unless env[:body].include?('modhash')

  body = env[:body]
  body = JSON.parse(body) if body.is_a?(String) && !body.strip.empty?
  body = body['json'] if body.is_a?(Hash) && body['json']
  body['data']['modhash'] if body.is_a?(Hash) && body['data']
end