Class: Saddle::Middleware::Request::JsonEncoded
- Inherits:
-
Faraday::Middleware
- Object
- Faraday::Middleware
- Saddle::Middleware::Request::JsonEncoded
- Defined in:
- lib/saddle/middleware/request/encode_json.rb
Overview
Request middleware that encodes the body as JSON.
Make sure you set request = :json for it to be activated.
Constant Summary collapse
- CONTENT_TYPE =
'Content-Type'.freeze
- MIME_TYPE =
'application/json'.freeze
Instance Method Summary collapse
Instance Method Details
#call(env) ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/saddle/middleware/request/encode_json.rb', line 22 def call(env) if env[:request][:request_style] == :json # Make sure we're working with a valid body that's not a String if env[:body] and !env[:body].respond_to?(:to_str) env[:request_headers][CONTENT_TYPE] ||= MIME_TYPE env[:body] = ::JSON.dump(env[:body]) end end @app.call env end |