千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

cookie是啥?
cookie是什么,cookie就是一种浏览器管理状态的一个文件,它有name,也有value,后面那些看不见的是Domain、path等等
cookie为什么存在?
由于http是不保存状态的协议,也就是说服务器是不清楚之前某个用户的浏览器有没有再一次访问过他,但是我们希望服务器能够知道用户再次访问了自己,所以就出现了cookie,当然在cookie之前,有另外的技术是可以解决,这里简单讲一下,就是在请求中插入一个token,然后在发送请求的时候,把这个东西带给服务器,这种方式是易出错,cookie比较好。
cookie是何时产生的?
第一次访问网站的时候,第一次访问网站的时候,浏览器发出请求,服务器响应请求后,会将cookie放入到响应请求中,在浏览器第二次发请求的时候,会把cookie带过去,服务端会辨别用户身份,当然服务器也可以修改cookie内容
cookie不可以跨域
不可跨域性,就是不能在不同的域名下用,每个cookie都会绑定单一的域名
cookie身上的属性
有name, value, expires/max-age, HttpOnly,domain, path, secure
cookie的有效期
一般浏览器的cookie都是默认储存的,当关闭浏览器结束这个会话的时候,这个cookie也就会被删除,这就是上图中的——session(会话储存)。
如果你想要cookie存在一段时间,那么你可以通过设置Expires属性为未来的一个时间节点,Expires这个是代表当前时间的,这个属性已经逐渐被我们下面这个主人公所取代——Max-Age
Max-Age,是以秒为单位的,Max-Age为正数时,cookie会在Max-Age秒之后,被删除,当Max-Age为负数时,表示的是临时储存,不会生出cookie文件,只会存在浏览器内存中,且只会在打开的浏览器窗口或者子窗口有效,一旦浏览器关闭,cookie就会消失,当Max-Age为0时,又会发生什么呢,删除cookie,因为cookie机制本身没有设置删除cookie,失效的cookie会被浏览器自动从内存中删除,所以,它实现的就是让cookie失效。
服务器端怎么设置cookie
服务端就是通过setCookie来设置cookie的,注意点,要设置多个cookie时,得多写几个setCookie
作者:Czr_
链接:https://juejin.cn/post/7008216662075768869
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。