Faraday Mashify
Faraday middleware for wrapping responses into Hashie::Mash.
This very specific middleware has been extracted from the faraday_middleware project.
This is fully compatible with FaradayMiddleware::Mashify
Installation
Add this line to your application's Gemfile:
gem 'faraday-mashify'
And then execute:
bundle install
Or install it yourself as:
gem install faraday-mashify
Usage
curl http://www.example.com/api/me
{"name":"sue445"}
require 'faraday/mashify'
connection =
Faraday.new(url: 'http://www.example.com') do |conn|
conn.response :mashify
conn.response :json
end
response = connection.get('/api/me').body
response[:name]
#=> "sue445"
response['name']
#=> "sue445"
response.name
#=> "sue445"
Customize response class
If you want to customize the response class, pass mash_class
to conn.response :mashify
. (default is Hashie::Mash
)
e.g.
class MyHash < Hashie::Mash
end
connection =
Faraday.new(url: 'http://www.example.com') do |conn|
conn.response :mashify, mash_class: MyHash
conn.response :json
end
response = connection.get('/api/me').body
response.class
#=> MyHash
Migrate from faraday_middleware
Please do the following
-
gem "faraday_middleware"
->gem "faraday-mashify"
inGemfile
-
require "faraday_middleware"
->require "faraday/mashify"
Development
After checking out the repo, run bin/setup
to install dependencies.
Then, run bin/test
to run the tests.
To install this gem onto your local machine, run rake build
.
To release a new version, make a commit with a message such as "Bumped to 0.0.2" and then run rake release
.
See how it works here.
Contributing
Bug reports and pull requests are welcome on GitHub.
License
The gem is available as open source under the terms of the MIT License.