クッキーの名前とパラメータを与えてCKCookieオブジェクトを作成します。クッキー名は必須ですが、パラメータは省略しても構いません。
cookie = CKCookie.new( name, value )
ブラウザに設定されているクッキーはCKRequestオブジェクトから取得することができます。CKRequestオブジェクトは、CKApplication#request属性で取得できます。
メソッド | 説明 |
---|---|
cookie(key) |
key の名前のクッキーを返す。クッキーが複数ある場合は、最初に見つかったものを返す。 |
cookies |
すべてのクッキーを配列で返す。 |
cookie_value(key) |
名前がkey のクッキーのパラメータを返す。クッキーが複数ある場合は、最初に見つかったものを返す。 |
cookie_values(key) |
名前がkey のすべてのクッキーのパラメータを配列で返す。key を指定しない場合は、すべてのクッキーのパラメータを返す。 |
生成したクッキーはCKResponse#add_cookieでCKResponseオブジェクトに追加します。クッキーを置き換えるのではなく、以前に設定したクッキーはそのままに新しいクッキーを追加していくことになります。
cookie = CKCookie( 'name' ) application.response.add_cookie( cookie )
クッキーをブラウザから削除するには、同じ名前を持つクッキーを送信して上書きします。その際に有効期限を過去に設定しておくと、ブラウザから完全にクッキーが削除されます。
cookie = CKCookie "name" cookie.expire = Time.new - 60 response.add_cookie cookie
CKResponseオブジェクトに設定したクッキーはCKResponse#remove_cookieで削除します。
application.response.remove_cookie( 'name' )