Sha256: 927d26035d49804dde7076dd7620af59699ca861f1ece5f5bd99d812df51a984

Contents?: true

Size: 557 Bytes

Versions: 33

Compression:

Stored size: 557 Bytes

Contents

module ZendeskAPI
  # @private
  module Middleware
    # @private
    module Response
      class ParseJson < Faraday::Response::Middleware
        CONTENT_TYPE = 'Content-Type'.freeze
        dependency 'json'

        def on_complete(env)
          type = env[:response_headers][CONTENT_TYPE].to_s
          type = type.split(';', 2).first if type.index(';')

          return unless type == 'application/json'

          unless env[:body].strip.empty?
            env[:body] = JSON.parse(env[:body])
          end
        end
      end
    end
  end
end

Version data entries

33 entries across 33 versions & 2 rubygems

Version Path
zendesk_api-1.19.1 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.19.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.18.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.17.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.16.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.15.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.14.4 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.14.2 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.14.1 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.14.0 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.13.4 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.13.3 lib/zendesk_api/middleware/response/parse_json.rb
zendesk_api-1.13.2 lib/zendesk_api/middleware/response/parse_json.rb