cookie

cookie是做web开发耳熟能详的概念。今天就来看看它的原理。

cookie诞生在1993年,由网景(netspace)公司的Lou Montulli发明,他在91年就开发了一款浏览器Lynx。90年代初期浏览器刚刚兴起,HTTP协议也开始得到广泛的应用。HTTP是无状态的,服务器无法根据请求判定用户。需要一种机制来题,cookie就是在此背景下被发明的。

cookie是浏览器请求服务器之后,服务器生成了一段cookie返回给浏览器,浏览器把这个cookie放在本地的某个文件中,以后浏览器再次发送请求时会带上这个cookie。

cookie的原理是服务器给浏览器发了一个凭证,这个凭证里保存了用户信息。以后浏览器再来请求服务器时,带着凭证,服务器根据凭证判断是哪个用户。

cookie是放在http request header里面进行传输,它的作用域跟域名有关。比如baidu的cookie和google的cookie是不能混合在一起的,请求百度就带着百度的cookie,请求Google就带着Google的cookie。对应二级域名来说,默认cookie也是不能通用的,就是场景的跨域问题,要想通用,可以设置cookie的domain。

cookie的生命周期是可以设置的,在cookie没有过期之前,即使关闭了浏览器,也是可以继续使用的。

cookie的应用可以做永久登录。当然cookie是不安全,利用cookie做CSRF攻击。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180831G209BH00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券