rails6で以下のようにsessionに値を入れてます。
ruby
1session[:user_id] = user.id
デフォルト設定のためsessionはcookie_store形式でuser.idをsecret_key_baseにより暗号化した値がブラウザのcookieにあります。
該当cookieの有効期限を調べるためブラウザのcookie expire情報をみるとSessionと書いてありました。
この意味について調べたところ、stackoverflowで以下の文章を見つけました。
By definition, sessions will expire after the browser is closed, they do not have timeout. If you open Chrome dev tools and look at the expiration date, it will say "Session" there instead of the date/time.
要はデフォルトだとブラウザを閉じたらsessionは消えるようです。
ただ、自分の環境ではブラウザを閉じてもcookieは消えずに存在し、ログアウトもされませんでした。
ここで言ってるsessionとはブラウザのcookieではないでしょうか?
正しければなぜブラウザを閉じてもcookieが消えないのはなぜですか。この文章が正しくないですか?(仕様が変わったとか)
cookie_storeはサーバ側に情報を持たずにブラウザのcookieを利用したやり方かと理解してますが、認識違いがありましたら教えていただきたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。