Class: Faraday::Encoding

Inherits:
Middleware
  • Object
show all
Defined in:
lib/faraday/encoding.rb

Instance Method Summary collapse

Instance Method Details

#call(environment) ⇒ Object



6
7
8
9
10
11
12
13
14
# File 'lib/faraday/encoding.rb', line 6

def call(environment)
  @app.call(environment).on_complete do |env|
    @content_charset = nil
    if /;\s*charset=\s*(.+?)\s*(;|$)/.match(env[:response_headers][:content_type])
      @content_charset = ::Encoding.find $1 rescue nil
    end
    env[:body].force_encoding @content_charset if @content_charset
  end
end