Sha256: 37ec4bf703e0946620d1ac6eed430f5df3494e1fee2944b365f7de83b2b1a319
Contents?: true
Size: 842 Bytes
Versions: 3
Compression:
Stored size: 842 Bytes
Contents
require 'faraday_middleware/response_middleware' class Frenetic module Middleware class HalJson < FaradayMiddleware::ParseJson def process_response(env) super if (500...599).include? env[:status] raise ServerError, env[:body]['error'] elsif (400...499).include? env[:status] raise ClientError, env[:body]['error'] end rescue Faraday::Error::ParsingError => err if (500...599).include? env[:status] raise ServerError, "#{env[:status]} Error encountered" elsif (400...499).include? env[:status] raise ClientError, "#{env[:status]} Error encountered" else raise ParsingError, err.message end end end end end Faraday.register_middleware :response, hal_json:lambda { Frenetic::Middleware::HalJson }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
frenetic-0.0.20.alpha.6 | lib/frenetic/middleware/hal_json.rb |
frenetic-0.0.20.alpha.5 | lib/frenetic/middleware/hal_json.rb |
frenetic-0.0.20.alpha.4 | lib/frenetic/middleware/hal_json.rb |