当我们访问网页时,http是属于无状态的,为什么呢?接下来由我慢慢讲解,在cookie的到来之前,你第一次访问页面的时候和最后一次访问页面服务器是不知道的,不知道那一次访问的页面是你。当用户登录的时候,刷新一下页面,又回到了最初始的状态,服务器又不认识我了。于是在这样的情况下cookie就诞生啦,用户每访问一次页面,服务器就会返回一个cookie,当刷新页面,返回的也是之前的cookie,就像是每个人的身份证一样,这就是cookie的工作原理。cookie可以设置一个有效期限,最常见的就是网页上提示的记住某某功能,这就是cookie,当有限期限过去,cookie会自动在服务器中删除(时间可以自定义设置),减轻了服务器的负担。当然cookie也有不好的一面,那就是安全性。
出于安全性考虑session就来啦,session是存储用户隐私信息的,session是存在服务器端的,一般非法用户是无法盗取里面的数据的,非常安全。用户请求页面时,浏览器会带上服务器下面的cookie并找到相对应的session数据,只要发现session里面用用户的信息,那么就会根据用户的信息返回相应的数据,这样,登录的功能就这样完成啦。每一个页面的cookie都对应着自己session,只有匹配成功才会实现数据的读取并实现。