Sha256: ce17a73775118b8de47c9c21d5caa0841675bfcf3483d30dadf02a08f84ea022
Contents?: true
Size: 885 Bytes
Versions: 3
Compression:
Stored size: 885 Bytes
Contents
require 'faraday' require 'zlib' module FaradayMiddleware class Adknowledge < Faraday::Response::Middleware dependency 'multi_xml' dependency 'zlib' def on_complete env encoding = env[:response_headers]['content-encoding'].to_s.downcase return unless env[:body].is_a? String case encoding when 'gzip' env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body]), encoding: 'ASCII-8BIT').read env[:response_headers].delete 'content-encoding' when 'deflate' env[:body] = Zlib::Inflate.inflate env[:body] env[:response_headers].delete 'content-encoding' end begin env[:body] = ::MultiXml.parse(env[:body])['result'] rescue Faraday::Error::ParsingError env[:body] end end end end Faraday::Response.register_middleware adknowledge: FaradayMiddleware::Adknowledge
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
adknowledge-0.0.6 | lib/faraday_middleware/adknowledge.rb |
adknowledge-0.0.4 | lib/faraday_middleware/adknowledge.rb |
adknowledge-0.0.3 | lib/faraday_middleware/adknowledge.rb |