HTTP无状态,每次请求都要携带cookie,以帮助识别用户身份;
服务端也可以向客户端set-cookie,cookie大小限制为4kb;
cookie默认有跨域限制,不跨域共享和传递,例如:
现代浏览器开始禁止第三方JS设置cookie
和跨域限制不同,这里是指禁止网页引入的第三方JS设置cookie,例如你有一个手机性能对比的网站,用户可以在你这个网站上来参考手机的性能,只访问你的网页你是没啥收入的,如果你想获得更多的收入,那么你可以植入一些JD的广告。
JD广告的js虽然访问不了你的cookie,因为cookie是不跨域共享的,但是可以拿到当前网页中的内容,它一看大概是和手机内容相关的,然后将这个信息放入到它的cookie中存储起来。
当有一天你访问JD时,你就会发现JD给你智能推荐你想要那款手机了。
因此,cookie新增了一个SameSite属性,用来防止CSRF攻击和用户追踪。
参考链接:cookie和token的区别