cookie日常开发测试都会经常接触,但是什么是cookie?
Cookie 就是服务器委托浏览器存储在客户端里的一些数据,而这些数据通常都会记录用户的关键识别信息。
因为HTTP协议本身无状态,也不会记录存储,所以在实际应用中很不方便,比如电商网站,用户每次都需要重新登录后才能浏览购物。
所以cookie的使用就很重要,它可以让服务器记住用户,识别出用户的身份,并判断该给它游客的访问权限还是用户的访问权限。
cookie在HTTP里传递给浏览器时,用到两个字段:响应头字段 Set-Cookie 和请求头字段 Cookie。
当用户通过浏览器第一次访问服务器的时候,服务器肯定是不知道他的身份的。所以,就要创建一个独特的身份标识数据,格式是“key=value”,然后放进 Set-Cookie 字段里,随着响应报文一同发给浏览器。
浏览器收到响应报文,看到里面有 Set-Cookie,知道这是服务器给的身份标识,于是就保存起来,下次再请求的时候就自动把这个值放进 Cookie 字段里发给服务器。
因为第二次请求里面有了 Cookie 字段,服务器就知道这个用户不是新人,之前来过,就可以拿出 Cookie 里的值,识别出用户的身份,然后提供个性化的服务。
在实际应用场景就是,你打开网站以后,不需要登陆了,浏览器已经识别到你是用户,你可以直接浏览了。
此文章为2月Day13学习笔记,内容来源于极客时间《透视HTTP协议》,强烈推荐该课程!