要約
目次
- 特異メソッド
- インスタンスメソッド
特異メソッド
- callback(dbman)[permalink][rdoc][edit]
- new(request, option = {}) -> CGI::Session[permalink][rdoc][edit]
- 
セッションオブジェクトを新しく作成し返します。 - [PARAM] request:
- CGI のインスタンスを指定します。
- [PARAM] option:
- ハッシュを指定することができます。
 以下の文字列が option のキーとして認識されます。 - session_key
- 
クッキーと <FORM type=hidden> の name として使われます。 (default: "_session_id") 
- session_id
- 
セッション ID として使われます。デフォルトのデータベースである FileStore を用いる場合, 値は英数字だけからなる文字列で無ければなりません。このオプションを指定するとリクエストにセッション ID が含まれても無視します。 (default: ランダムに生成されます) 
- new_session
- 
値が true のときは強制的に新しいセッションを始めます。値が false のときは、リクエストにセッション ID が含まれていない場合に例外 ArgumentError が発生します。値がないときは、リクエストにセッション ID が含まれている場合はそれを使用し、含まれていない場合は新しいセッションを始めます。 (default: 偽) 
- database_manager
- 
データベースクラスを指定します。組み込みで CGI::Session::FileStore, CGI::Session::MemoryStore, CGI::Session::PStore を提供しています。デフォルトは CGI::Session::FileStore です。 
- session_expires
- 
セッションの有効期間。 Time オブジェクトを与えると、セッションはその日時まで破棄されずに残ります。デフォルトでは、セッションはブラウザの終了と同時に破棄されます。 
- session_domain
- 
セッションが有効となるドメインを指定します。デフォルトでは、CGI を実行しているサーバのホスト名になります。 
- session_secure
- 
真を指定すると HTTPS の場合のみ有効になります。 
- session_path
- 
クッキーの path として使われます。デフォルトは File.dirname(ENV["SCRIPT_NAME"]) です。つまり、スクリプトの URI の path 部の最後のスラッシュまでです。 
- tmpdir
- 
CGI::Session::FileStore がセッションデータを作成するディレクトリの名前を指定します。デフォルトは Dir.tmpdir です。 
- prefix
- 
CGI::Session::FileStore がセッションデータのファイル名に与えるプレフィックス。 (default: "") 
- suffix
- 
CGI::Session::FileStore がセッションデータのファイル名に与えるサフィックス。 (default: "") 
- no_hidden
- 
真を指定すると @output_hidden が nil になります。 
- no_cookies
- 
真を指定すると @output_cookies が nil になります。 
 例: CGI::Session.new(cgi, {"new_session" => true})
インスタンスメソッド
- self[key] -> object[permalink][rdoc][edit]
- 
指定されたキーの値を返します。値が設定されていなければ nil を返します。 - [PARAM] key:
- キーを指定します。
 
- self[key] = val[permalink][rdoc][edit]
- 
指定されたキーの値を設定します。 - [PARAM] key:
- キーを指定します。
- [PARAM] val:
- 値を指定します。
 
- close -> ()[permalink][rdoc][edit]
- 
データベースクラスの close メソッドを呼び出して、セッション情報をサーバに保存し、セッションストレージをクローズします。 
- delete -> ()[permalink][rdoc][edit]
- 
データベースクラスの delete メソッドを呼び出して、セッションをストレージから削除します。 FileStore の場合はセッションファイルを削除します。セッションファイルは明示的に削除しなければ残っています。 
- new_session -> bool[permalink][rdoc][edit]
- 
真であれば新しいセッション ID を生成します。 
- session_id -> String[permalink][rdoc][edit]
- 
セッション ID を返します。 
- update -> ()[permalink][rdoc][edit]
- 
データベースクラスの update メソッドを呼び出して、セッション情報をサーバに保存します。 MemoryStore の場合は何もしません。