Class: Faraday::Encoding
- Inherits:
-
Middleware
- Object
- Middleware
- Faraday::Encoding
- Defined in:
- lib/faraday_middleware/encoding.rb
Instance Method Summary collapse
Instance Method Details
#call(environment) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/faraday_middleware/encoding.rb', line 7 def call(environment) @app.call(environment).on_complete do |env| @content_charset = nil if /;\s*charset=\s*(.+?)\s*(;|$)/.match(env[:response_headers][:content_type]) encoding = $1 encoding = 'utf-8' if encoding == 'utf8' # this is the actual fix @content_charset = ::Encoding.find encoding rescue nil end env[:body].force_encoding @content_charset if @content_charset end end |