0
0

More than 1 year has passed since last update.

[Rails]Cookieとセッションの違い

Posted at

はじめに

現在プログラミングスクールに通っています。
就活を始めるにあたって質問されそうなことを言語化しておきたく自分なりにまとめました。

① 簡単な説明
② 1行に要約する
③ 3行に要約する

Cookieとは

WebサーバーがクライアントPC(クライアントサイド)に預けておく小さなファイルのことです。
クライアントPCが、あるWebサーバーに初めて接続した際に、Webサーバー(サーバーサイド)がクライアントPCの中に、そのWebサーバー専用のCookieファイルを作成します。

クライアントPCがWebサーバーに接続したときには、WebブラウザがそのCookieをWebサーバーに送信します。このような仕組みによって、Webサーバーは、個々のクライアントコンピュータが前回使用していた情報を読み取ることができるようになります。

Cookieには、Webサーバーによってどのような情報でも格納できる


・ユーザー名などの接続情報
・ショッピングサイトなどで購入する商品を一時的に保管する“買い物かご”の情報
・氏名や住所、電話番号などの一度登録した会員情報

1行で言うと

サーバーサイドがクライアントサイドに預けておく小さなファイル

3行で言うと

サーバーサイドがクライアントサイドに預けておく小さなファイルがCookieです。
次回クライアントサイドからサーバーサイドに接続する時にCookieがサーバーサイドに送信されます。
サーバーサイドがCookie(前回使用していた情報)を読み取る事ができます。

セッションとは

アクセスの開始から終了までの一連の通信のことです。
終了には「ブラウザを閉じる」、「ログアウトする」「時間によって通信が切れる」事があります。
セッションが用いられるのは主にアクセス解析の場面がほとんどです。

セッションの流れ

クライアントがWebサイトにアクセスしページの情報を取得するように信号が発せられます。
その信号を受信したサーバーはページをクライアントへ送信します。
サーバーはクライアントとの通信が行われたと認識するのです。
クライアントが他のページに移行する場合セッションは継続中です。
サーバーサイドが「このクライアントとの通信はまだ終わっていない」と認識することで、これが一連の通信となり、セッションとなるのです。

セッションの間はそのクライアントの情報は保持されています。

1行で言うと

アクセスの開始から終了までの一連の通信

3行で言うと

アクセスの開始から終了までの一連の通信のことです。
終了には「ブラウザを閉じる」、「ログアウトする」、「時間によって通信が切れる」事があります。
セッションが用いられるのは主にアクセス解析の場面がほとんどです。

Cookieとセッションの違い

1行で言うと

保存場所と保存期間と無効にできるかできないか

3行で言うと

クライアントサイドで保存するのがCookie、サーバーサイドでも保存できるのがセッション
永続的に保存できるのがCookie、一連の通信のみ保存できるのがセッション
無効できるのがCookie、無効できないのがセッション
0
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
0
0