网站登陆与登出的实现--token
文章目录

登陆
- 登录时提交用户名和密码
- 服务器先验证用户名和密码是否正确(包括自身登陆以及三方登陆)
- 服务器生成并下发一个token(不一定生成,如果你本身带了一个sessionid,那它就会拿你那个sessionid和userid关联起来),总之它会记下来说你提交给我的某一个而唯一的东西要跟你的userid关联起来,这样你下次再提交过来的时候,我就去那个关联的表里查一查,看你是否已经被关联过了,如果你已经关联过了,那服务器就能知道这个人是你。客户端收到这个信息以后会把这东西存起来,浏览器是存在cookie里面的,如果是app,则存在本地(个人理解为可以实现网站记住登录的这样一种状态,以及其它一些需要身份认证的请求等等)。总之你就会一个东西来表明你的身份,这个东西是服务器给你的,或者是你自己提交给服务器认证的这样一个东西。
- 有了这个东西(token)以后,服务器那边记下这个token,并设置有效期(因为token不可能永久有效,那样如果泄露了,一次泄露变成永久泄露,那就不行了),服务器和客户端都会有一个有效期的设置,比如说:如果你记住登录,那有效期可能及时三个月或者怎样,如果没记住登陆,那你的有效期就将是一个session(所谓session就是你浏览器关了以后就无效了)。
- 所这个token可以是一个seesionid也可以是cookie里面的一个key。
登出
- 服务端和客户端都把token删除,这样这个token就无效了
- session清理
token就是下面的那个t,黑客可以通过窃取这个t来达到假装你进行登录网站的操作
