2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Cookieとセッションの概要

Posted at

HTTP Cookie及びセッションの概要記事。

Cookie

  • ユーザーの情報を一時的にクライアント(ブラウザ)に保存する仕組み・その情報を指す。

Cookieの用途

  • ユーザー情報を一時的に保存し、その情報を利用したユーザーの特定、情報入力の省略用途で利用する。
    • 例:ログイン画面フォームを入力状態とする。

Cookieのやり取り

Cookie_Sequence.png

初回

  • ②レスポンス(Cookieの保存を指示)
    • サーバーは、レスポンスに Set-Cookie ヘッダを付与し、クライアントに対して「Cookieの保存」を指示できる。
    • Set-Cookie ヘッダには、Cookieの有効期限やCookieを送るドメイン、有効パスなどの属性を、; で区切って記述する。
  • ③Cookieを保存
    • サーバーからの Set-Cookie ヘッダの内容に基づき、クライアントはCookieを保存する。

2回目以降

  • ①リクエスト(Cookieを含む)
    • クライアントは、リクエストに Cookie ヘッダを付与し、サーバーに「どのようなCookieを保存している」かを表明することができる。
    • Cookieが存在する限り、常にリクエストにCookieヘッダを付与する。

セッション

  • ユーザーの一連の処理・操作を表す情報。
    • 例:ログイン~ログアウトまで
  • 「セッションID」を使用して同一セッションを管理する。
  • セッションIDはCookieに保存し、HTTPヘッダーに付与して送受信を行う。
  • ユーザーがブラウザを閉じるか、サイトを離れた際に、削除する。
    • 通常30分後にセッションは終了される。

セッションの用途

  • ユーザーの操作に関する情報を一時的に保存するために利用する。
    • 例:ECサイト閲覧中に、商品をカートに入れた後、サイトを離れ、再度アクセスしたときに、カートに商品が入ったままの状態とする。

Cookieを用いたセッション管理

Session_Sequence.png

Cookieとセッションの違い

クッキー セッション
用途 ユーザーの識別情報の記憶
セッションIDの送受信
ユーザーの一連の操作の記憶
保存場所 クライアント(ブラウザ)のみ サーバー
無効化 不可

参考情報

2
0
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
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?