在node中,token是“凭据、信物”的意思,是访问资源的凭据,是一种身份认证的方式;当用户登录成功后返回token,并且存于数据库,用户访问资源的时候需要携带token,token在客户端保存会话数据,在服务器中判断token的有效性。
本教程操作环境:windows10系统、nodejs 12.19.0版本、Dell G3电脑。
node中token是什么意思
什么是Token?
Token指访问资源的凭据,是一种身份认证的方式,它是解决跨域认证的最流行的一种方式。
为什么用Token?
以前较为流行的是通过session去做身份认证,session是通过服务器中保存会话数据来做身份认证,这种方式会导致在高并发中服务器压力过大的情况,还有就是,如果是服务器集群,那么就需要这些服务器session共享。
Token不在服务器中保存会话数据,而是保存在客户端。每次请求的headers中存入Token,在服务器中判断Token的有效性,是否可以访问资源。
传统Token和JWT的区别
传统Token
用户发起登录请求,登录成功之后返回Token,并且存于数据库,用户访问资源的时候需要携带Token,服务端获取Token之后和数据库中的对比。
JWT
用户发起登录请求,登录成功之后返回Token,但是不存于数据库,用户访问资源的时候需要携带Token,服务端获取Token之后去校验Token的合法性。
推荐学习:《nodejs视频教程》