Closed6

Cookieとセッションの違い

Hiroki MatsumotoHiroki Matsumoto

http通信は要求されたデータを返すだけ

  • たくさんの情報を処理するためにつくられているため、相手が誰であろうと素早く情報を処理する必要があた
  • httpはログインなど高度な技術を処理する前提で作られていない

httpはステートレス

  • httpは状態を持てない、その代わりリクエストとレスポンスの流れがシンプル
  • すべてのやり取りを記録する、状態を持ってしまうとデータが膨大になるため状態を持てないようにしている
Hiroki MatsumotoHiroki Matsumoto

Cookieとは?

サーバーがクライアント側に発行するメモ書きみたいなもの

  1. クライアントがWebページにアクセス
  2. サーバーがCookieを発行してクライアントに渡す
  3. 次回からクライアントは発行してもらったCookie保持したままWebサイトにアクセスできる

問題点

ヘッダーの中を覗けば情報が丸わかり

Hiroki MatsumotoHiroki Matsumoto

セッションとは?

  • ログイン情報などを受け取ったサーバーは、クライアントに対してセッションIDを発行する
  • 情報はクライアントには渡さずセッションIDのみを渡す
  • 情報はサーバーが保持して、セッションIDを照合してログインなどの情報を処理する
  • クライアン側は丸裸の情報を持たず、セッションIDのみをヘッダーに保存する

メリット

  • 情報を安全にやりとりできる
Hiroki MatsumotoHiroki Matsumoto
クライアント サーバー
Cookie 情報を保持 Cookieを発行
Session セッションIDを保持 セッションIDを発行・情報を保持
このスクラップは2022/04/13にクローズされました