简单介绍Cookie和Session
问题由于HTTP协议的无状态性导致用户体验变差比如每换一个页面就重新登录也阻止了用户与服务器交互比如记录购物车里的商品。CookieCookie的本质Cookie本质上是服务器发送给浏览器并保存在浏览器上的一小段数据获得Cookie的过程第一次通过浏览器登录服务器成功后服务器会将登录信息通过响应报头——Set-Cookie返回给浏览器浏览器则会将其保存下来Cookie。Cookie的作用浏览器每次发起请求都会携带Cookie到请求报文里。这样服务器就认识了用户而不用用户重新登录这也就提高了用户体验。不仅如此还可以把用户的浏览痕迹也保存在Cookie中包括购物信息这样一来也就解决了用户和服务器无法交互的问题。Cookie的时效性Cookie有内存级和文件级。内存级的Cookie在浏览器重启后自动清除而文件级的Cookie永久存在或者存在一段时间关键要看用户的设置只使用Cookie的缺点单纯的Cookie有较大缺陷首先黑客只要盗走Cookie就可以盗走用户登录信息以及浏览痕迹并且冒名登录用户的账号其次Cookie中携带浏览痕迹会让Cookie文件变大传输效率不高也不利于维护。Cookie和SessionSession技术配合Cookie技术是一种良好的实践具体如下在用户第一次登录成功后服务器先为其创建一个Session对象把登录信息和浏览痕迹保存在Session对象中并给Session对象分配一个Session id然后只把Session id写到Cookie中去浏览器只通过携带Session id发起请求就可以获得用户之前的状态。优点Cookie和Session配合将用户的私密信息保护在服务器里难以盗取并且由于用户信息在服务器维护服务器可以对用户的状态做各种检查以此判断用户是否异常比如登陆地突然改变突然qq发起很多陌生会话等这在一定程度上增加了安全性。总之Cookie和Session技术结合共同维护了一个用户与服务器的会话。

相关新闻