Scale-of-evaluation / daily-question

This repo is used to help you better understand the world,Enjoy!
MIT License
4 stars 2 forks source link

【08.29】token、session的区别 #232

Open changjl317 opened 3 years ago

changjl317 commented 3 years ago

请在下面作答

Derek-94tm commented 3 years ago

token与session的不同主要在: (1)认证成功后,会对当前用户数据进行加密,生成一个加密字符串token,返还给客户端(服务器端并不进行保存) (2)浏览器会将接收到的token值存储在Local Storage中,(通过js代码写入Local Storage,通过js获取,并不会像cookie一样自动携带) (3)再次访问时服务器端对token值的处理:服务器对浏览器传来的token值进行解密,解密完成后进行用户数据的查询,如果查询成功,则通过认证,实现状态保持,所以,即时有了多台服务器,服务器也只是做了token的解密和用户数据的查询,它不需要在服务端去保留用户的认证信息或者会话信息,这就意味着基于token认证机制的应用不需要去考虑用户在哪一台服务器登录了,这就为应用的扩展提供了便利,解决了session扩展性的弊端