前言
JAVA WEB项目可分为无状态与有状态。一个商城,用户添加购物车或者下订单这种操作,都是有状态的,服务器为了区分不同用户的操作,需要记录一些特殊的信息。当用户再次访问时,携带这些信息,服务器就可以区分出用户做了哪些操作。从最早的Cookie到后来的Session,再到后来的Token,本文带你了解这段发展旅程。
Cookie概念
你有没有碰到过这种情形,之前在搜索引擎搜索过一些商品,之后连着几天都会有各种广告推送相关的商品。这是因为之前浏览网页的时候,服务器发送了一些信息记录在你的计算机上,下次再次光临网站时,服务器会先看看请求中有没有这些信息,有的话就会推送特定的网页内容。上面提到的信息就是Cookie。
Cookie是由服务器生成,发送给浏览器,浏览器会将Cookie中的key/value保存到某个目录下的文件中。下次访问时携带Cookie发送到服务器。
Cookie的属性主要包括:名字,值,过期时间,路径和域。路径与域一起构成cookie的作用范围。
1)Name 和 Value 属性由程序设定,默认值都是空引用。
2)Domain属性的默认值为当前URL的域名部分,不管发出这个cookie的页面在哪个目录下的。
3)Path属性的默认值是根目录,即 ”/” ,不管发出这个cookie的页面在哪个目录下的。可以由程序设置为一定的路径来进一步限制此cookie的作用范围。
4)Comment属性,注释。
<