見出し画像

Cookiesとは

こんにちは(o'∀')ノ
Railsチュートリアルで自作アプリを作成中です。
Cookieについて、名前と動きはなんとなくわかってたけど、
読み進めている内に、もっと詳しく知っていた方がいいなと思い備忘録として残すことにしました。

画像1

まず、自分のパソコンからアプリに登録する設定で考えます。


① 新規登録画面でメールアドレスやパスワードを登録します。

>> その後、サーバー上にユーザー情報が保存され、
ユーザーはログイン後の画面に遷移し、サービスを使える様になります。
>> また、レスポンスとして帰ってきた画面にcookieも一緒に返ってきます。
>> 返ってきたcookieは自分のパソコンで使用しているブラウザに一定期間保存されます(Railsチュートリアルではデフォルトの20年)

デフォルトの20年の設定
cookies.permanent[:クッキー名] = 値

cookies.permanent[:user_name] = "yozakura"
① ユーザーIDをブラウザのクッキーを保存させる処理
cookies[:user_id] = user.id

② 上のだと生テキストで保存されてしまう(ブラウザに保存する前に暗号化しておく)
cookies.signed[:user_id] = user.id
→ そのためCromeで使用していても、Safariで開く際は反映されない

③ ユーザーIDと記憶トークンはペアで扱う必要がある
cookies.permanet.signed[:user_id] = user.id
→ permanetでくっつけちゃえばいい

② 次回ログイン時にはcookieと一緒にリクエストを出します。(cookieの設定が有効になっている場合)


>> サーバー側では、ユーザーから送られてきたcookieとDB内のユーザー情報を照合し、合っていたらログイン成功後の画面を返します。

ログイン機能の他にも、
アマゾンなどの買い物カゴの情報や学習アプリでは勉強内容の記録などに使用されています。

↓Cookieと似ているもの↓


キャッシュ


>> ユーザーがサイトに訪れた時の情報を一時的に保存することで、2回目以降は表示スピードが早くなる
>> しかし、いろいろなサイトを見れば見るほど、キャッシュがたまりPCやスマホの容量を食ってしまう。→キャッシュの削除が必要



この記事が気に入ったらサポートをしてみませんか?