class FaradayMiddleware::Reddit::ForceJson
Request middleware to force reddit to provide JSON responses when available.
For GET requests that means adding ‘.json` to the ends of URLs. For POST requests that means adding `api_type=json` to sent requests.
Public Class Methods
new(app, options = nil)
click to toggle source
Calls superclass method
# File lib/faraday_middleware/reddit/use/force_json.rb, line 13 def initialize(app, options = nil) super(app) @options = options || {} end
Public Instance Methods
call(env)
click to toggle source
# File lib/faraday_middleware/reddit/use/force_json.rb, line 18 def call(env) case env[:method].to_s when 'get' env[:url].path += '.json' unless env[:url].path.end_with?('.json') when 'post' env[:body] = (env[:body] || '') + 'api_type=json' unless env[:body] && env[:body].include?('api_type') end @app.call(env) end