3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Cookieの破棄されるタイミングについて

Last updated at Posted at 2024-04-28

はじめに

備忘録です

Cookieの有効期限の違い

Cookieを保存する際は有効期限を設定できるのですが、設定はオプションです。
有効期限をつけた場合とつけない場合の違いを見てみます。

Cookieに有効期限をつけない場合

Cookieは検証ツール → Application → Cookiesで確認可能です。
有効期限を設定しない場合、ExpiresにはSessionと記載されます。
有効期限を設定しないCookieは特別にSession Cookieと呼ばれるそうです。
有効期限はブラウザを閉じるまでです。
注意点はタブを閉じても削除はされない点です。 また、ブラウザをリロードしても削除されません。
スクリーンショット 2024-04-29 1.01.24.png

有効期限を設定した場合

有効期限を設定した場合、Expiresには有効期限が表示されます。
有効期限内はブラウザを閉じても、リロードしてもCookieは保持され続けます。
有効期限が切れた場合、ブラウザを終了したら削除されるのはもちろん、画面のリロードでも破棄されます。

スクリーンショット 2024-04-29 1.14.20.png

おわりに

今回の検証を行った動機はRailsのsessionやcookiesといったメソッドを利用している際に、cookieの保存方法に何か違いはあるのだろうか。という疑問が生じたからです。

Railsのsessionメソッドでcookieに保存されるsession_idは、なぜブラウザ閉じたら勝手に消えるのだろう。と考えていたのですが、単に有効期限を設定せずにcookieに対して値を保存すると、デフォルトでそうなるブラウザ側の仕様だったのです。このことから、cookieメソッドで保存した場合でも有効期限を設定しない場合同じ挙動になることを理解できました。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?