Sha256: decb8dca2218e8719e8595a1cffd47fb995b4a9bf98d703f090e8b827b46348f
Contents?: true
Size: 739 Bytes
Versions: 2
Compression:
Stored size: 739 Bytes
Contents
module Munson module Middleware class JsonParser < Faraday::Response::Middleware def initialize(app, key_formatter = nil) super(app) @key_formatter = key_formatter end def call(request_env) @app.call(request_env).on_complete do |request_env| request_env[:body] = parse(request_env[:body]) end end private def parse(body) unless body.strip.empty? json = ::JSON.parse(body, symbolize_names: true) @key_formatter ? @key_formatter.internalize(json) : json else {} end end end end end Faraday::Response.register_middleware :"Munson::Middleware::JsonParser" => Munson::Middleware::JsonParser
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
munson-0.3.1 | lib/munson/middleware/json_parser.rb |
munson-0.3.0 | lib/munson/middleware/json_parser.rb |