Class Rack::Session::Cookie
In: lib/rack/session/cookie.rb
Parent: Object

Rack::Session::Cookie provides simple cookie based session management. The session is a Ruby Hash stored as base64 encoded marshalled data set to :key (default: rack.session). 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.

Methods

call   new  

Public Class methods

[Source]

    # File lib/rack/session/cookie.rb, line 26
26:       def initialize(app, options={})
27:         @app = app
28:         @key = options[:key] || "rack.session"
29:         @secret = options[:secret]
30:         @default_options = {:domain => nil,
31:           :path => "/",
32:           :expire_after => nil}.merge(options)
33:       end

Public Instance methods

[Source]

    # File lib/rack/session/cookie.rb, line 35
35:       def call(env)
36:         load_session(env)
37:         status, headers, body = @app.call(env)
38:         commit_session(env, status, headers, body)
39:       end

[Validate]