浏览器保存,再按规则带回
服务器可以在响应中要求浏览器设置Cookie,后续浏览器在符合域名、路径、安全和其他规则的请求里带回它。网页脚本在允许范围内也可能创建或读取某些Cookie。
设想你选择了深色主题,网站保存一个偏好值,下次请求或页面处理时就能复用。若用于登录,Cookie常保存会话标识,而用户资料和权限可能保存在服务器一侧。
一次会话标识的往返
- 01响应
服务端设置会话标识Cookie
- 02后续请求
浏览器按范围等规则带回标识
- 03服务端判断
验证会话是否存在、有效及允许操作
示例采用服务端会话,Cookie也能用于其他用途。
Cookie怎样帮网站认出这次会话
例如登录后,Cookie里可能带着一个会话编号;浏览器再次访问时把编号带回,网站再查对应记录,判断是谁、登录是否仍有效。它不一定直接存着密码和完整个人资料。
网站和浏览器会限制哪些地址可以收到记录、保存多久、怎样访问。Cookie也可能参与访问识别和跟踪,所以它的用途要看网站怎样使用,不能一概等同于恶意程序。
退出与过期,需要两端一起理解
Cookie有不同有效期,浏览器结束会话的定义也可能受恢复功能影响。不能机械认为关掉浏览器就一定退出,更不能把删除本地Cookie当成服务端所有会话都已失效。
反过来,Cookie仍在本地也不保证登录有效:服务端会话可能过期、被撤销或需要重新验证。要理解实际登录状态,必须同时看浏览器带回的标识和服务端的判断。