セッションとクッキーとキャッシュ

最初に言っておきます間違ってたら訂正コメントください!!


セッションとクッキーはWebアプリを作るうえでは必要な設定だと思います

まず簡単な説明をすると2つとも情報を保存するシステムで

  • クッキー(cookie) →ブラウザ利用者がクッキーというデータを保存して期間内にアクセスするとログインなどの情報が維持されるブラウザを終了しても消えない
  • セッション(session) →ログインなどをクッキーを利用して維持するブラウザを終了したら消える+一定時間経つと消える


めっちゃアバウトな説明だとこんな感じ
あと、公衆Wi-Fiなどを利用するときはログインなどをしないようにしようって話


ブラウザの設定項目を確認してほしいのですが
chromeだと設定から詳細設定を表示してこんな画面の閲覧履歴などのところにあります
閲覧履歴と同じところにあるということで予想がついた方はするどい!!

・クッキー 閲覧履歴は当然自分のPCやスマホのストレージに保存されます
クッキーも同様で自分の端末に情報が保存されます!

そしてそれがサーバーに送られることによって機能するわけですが
保存された情報はログインの情報だけでなく通過したWebページも保存され送られる
のでこれによって自分に合った広告などが出てくるようにできる
トラッキングクッキーと呼ばれる
保存データが悪用されたりするので公衆Wi-Fiでは注意
ちなみにクッキーは保存しない選択ができます)



・セッション

セッションの仕組みはクッキーを利用していてWebサーバーにも情報を保存させるが
Webサーバーからクッキーを元に作られたランダムの英数字(セッションIDと呼ばれる)が送られてきて
それをクッキーとして保存させ利用する
そして保存場所が
メモリという一時記憶の場所に保存させることでブラウザを閉じるまでしか保存されない
+一定時間限定で切り替わる仕組みで情報送信フォームなどの利用を制限する
などに利用されたり安全性の向上ができます
下に書いたキャッシュを読むと少しわかりやすいかも


セッションIDを定期的に変更したりと安全に使えるようになってきているみたいですができるだけ公衆Wi-Fiの使用したログインはしないようにね!!
ちなみにブラウザの前回に利用したタブの復元設定だとクッキーは永続的に保存されるようです



キャッシュ

設定のところで一緒に出てきた言葉なので解説
ネット回線のないところでもWebページを移動して見れることありますよね?

例えば
Webページを移動したりして機内モードにして戻るボタンを押すとネットを使ってないのにWebページが見れる 

アプリを使用→ホームに戻る→アプリを起動するとアプリがスタート時の画面でなく利用してた画面に戻ってくれる
みたいな

セッションと同じように
キャッシュは一時的にデータを保存する仕組みです簡単に言うと本のしおり
データを保存しておくことによって読み込みを短縮させようとのこと
もちろんデータが保存されるのでいわゆるブラウザの動作が重くなったりすることもある


以下補足のような蛇足


(スマホの動作が遅くなったりしてる気が~って人はアプリ履歴の削除やスマホの再起動などしてみてください)
手元にないのでわからないのですが
古いiPhoneだとアプリのキャッシュをクリアするのはホームボタンを二度おしてアプリを消していく方式だったので
それを知らずに電源を切ることなくしようしてる人はiPhoneの動作が遅くなってました
ちなみにandroidは自動的にキャッシュを消して動作を軽くする仕組みがありましたこちらも新しい機種はわからないですけど



セッションやクッキーを利用する仕組みをWebアプリ作成時には設定することがあるので少しでも参考になれば

コメント

人気の投稿