あまぶろぐ

インフラと趣味のゆるいブログ

Cookieやセッションを整理する

Webアプリケーションにおいて、ユーザを管理する際にCookieやセッションといった言葉を何気に使っていたので一旦整理してみた。

Cookieとは

Webアプリがユーザ側に保存するデータ。最大4KBまでしか保存できない。ユーザIDやアクセス履歴などの情報をCookieに含めることで、Webアプリにアクセスした時にユーザに最適な情報を表示できる。CookieはHTTP通信のヘッダーでやりとりされる。リクエストヘッダーでCookieをWebアプリになげる。 Webアプリ側のレスポンスで「set-cookie」を指定して、ブラウザ側にCookieを返す。

セッションとは

Webアプリ側でユーザの情報を保持することに利用される。HTTPはステートレスなので、アプリにログインしたユーザの情報をそのままだと持てない。ユーザごとに異なる画面やサービスを提供するために、利用されるのがセッションである。ユーザのアクセスの際に「ユーザを特定する」ために利用されるのが、Cookieである。