Make Rails cookie handling available for grape. cookies
method
will return an ActionDispatch::Cookies::CookieJar
instead of Grape::Cookie
.
The following classes will be monkey patched:
Grape::Endpoint
Grape::Request
Grape::Cookies
is deleted if it existsActionDispatch::Cookies::CookieJar
Add this line to your application's Gemfile:
gem 'grape-cookies'
And then execute:
$ bundle
Or install it yourself as:
$ gem install grape-cookies
# Only needed if you want to use signed cookies
Grape::Cookies.configure do
signed_cookie_salt 'signed cookie'
encrypted_cookie_salt 'encrypted cookie'
encrypted_signed_cookie_salt 'signed encrypted cookie'
secret_key_base 'secret base'
cookies_serializer :json
end
class API < Grape::API
include Grape::Cookies::Ext::API
get '/test' do
cookies.signed['test_signed'] = '1234'
cookies['test_unsigned_signed'] = 'unsigned_1234'
end
end
When secret_key_base
is not set and a cookie is signed an ArgumentError
will be thrown.
- Fork it ( https://github.com/faber-lotto/grape-cookies/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request