你有没有过这样的经历?早上赶时间,在手机上打开常买的咖啡店小程序,刚点开就自动弹出你上周常点的那杯美式,连糖和奶的选项都帮你填好了。这背后啊,其实就是HTTP协议里的一个叫cookie的小东西在默默干活。
什么是cookie?
简单说,cookie就是服务器发给浏览器的一小段数据,存在你的设备上。下次你再访问同一个网站,浏览器就会把这段数据原样带回去。它就像服务员记下的老顾客偏好,下次来不用多说,直接按习惯上菜。
比如你登录某个购物网站,勾了“记住我”,于是关掉页面再打开,账号还是登录状态。这就是因为登录成功后,服务器通过HTTP响应头下发了一个包含身份信息的cookie,浏览器存了起来,之后每次请求都会自动带上它。
实际例子:逛个网店就知道
假设你打开一个卖锅具的网站,浏览了一款不粘锅。这时候,服务器可能就在HTTP响应里加一句:
Set-Cookie: recent_view=pan123; expires=Wed, 05 Mar 2025 10:00:00 GMT; path=/浏览器收到后,就把这个cookie存下。等你第二天再打开这家店首页,浏览器会在请求头里自动加上:
Cookie: recent_view=pan123服务器一看,哦,这位客人昨天看过不粘锅,那首页推荐区就优先展示炒锅、锅铲这些相关商品,顺手再打个折,成交率立马高了。
cookie不只是“记住我”
除了保持登录状态、记录浏览历史,cookie还能干不少事。比如电商结算时,购物车里的商品列表往往也靠cookie暂存。你在厨房电器页加了个料理机进购物车,跳去看菜谱,再回来,东西还在——多半是cookie在帮你留着。
当然,cookie也有局限。它最多4KB左右,存不了大内容,而且随着隐私政策收紧,现在很多浏览器默认限制第三方cookie。但对大多数日常网页功能来说,它依然是那个不起眼却离不了的“小帮手”。