Class: Rack::Session::Cookie
- Inherits:
-
Abstract::ID
- Object
- Abstract::ID
- Rack::Session::Cookie
- Defined in:
- lib/rack/session/cookie.rb
Overview
Rack::Session::Cookie provides simple cookie based session management. By default, the session is a Ruby Hash stored as base64 encoded marshalled data set to :key (default: rack.session). The object that encodes the session data is configurable and must respond to encode
and decode
. Both methods must take a string and return a string.
When the secret key is set, cookie data is checked for data integrity.
Example:
use Rack::Session::Cookie, :key => 'rack.session',
:domain => 'foo.com',
:path => '/',
:expire_after => 2592000,
:secret => 'change_me'
All parameters are optional.
Example of a cookie with no encoding:
Rack::Session::Cookie.new(application, {
:coder => Racke::Session::Cookie::Identity.new
})
Example of a cookie with custom encoding:
Rack::Session::Cookie.new(application, {
:coder => Class.new {
def encode(str); str.reverse; end
def decode(str); str.reverse; end
}.new
})
Defined Under Namespace
Classes: Base64, Identity, Reverse
Constant Summary
Constants inherited from Abstract::ID
Instance Attribute Summary collapse
-
#coder ⇒ Object
readonly
Returns the value of attribute coder.
Attributes inherited from Abstract::ID
Instance Method Summary collapse
-
#initialize(app, options = {}) ⇒ Cookie
constructor
A new instance of Cookie.
Methods inherited from Abstract::ID
Constructor Details
Instance Attribute Details
#coder ⇒ Object (readonly)
Returns the value of attribute coder.
79 80 81 |
# File 'lib/rack/session/cookie.rb', line 79 def coder @coder end |