直接上图:
四个步骤:
一、client(browser)访问login page, 输入登录信息,若信息无误,server就会generate一个jwt token.
二、server将JWT token发到client side, 浏览器就会将该 JWT token 保存起来。之后每次与server交流,都会携带jwt token。
三、如果client要访问一些特权服务(如VIP服务,编辑权限),server会先检查验证浏览器所携带的jwt token。
四、然后server返回对应的结果到浏览器。
注意
所有的generation,verification步骤都在server side 完成。浏览器只负责保存与携带jwt token。
对比
传统的授权方法是session id lock。 每次浏览器只携带session id 过去,而server需要读自己的数据库来确定该用户的权限。jwt token改变了数据存储的地点。更快。