首页 >

用jwt还是用redis和token – 数据库 – 前端|

苹果平板电脑上网慢怎么办,通过论坛如何开展营销活动,jj斗地主怎么升级快用jwt还是用redis和token - 数据库 - 前端|用jwt还是用redis和tokenToken机制简述

Token的用途

用户在登录APP时,APP端会发送加密的用户名和密码到服务器,服务器验证用户名和密码,如果验证成功,就会生成相应位数的字符产作为token存储到服务器中,并且将该token返回给APP端。

以后APP再次请求时,凡是需要验证的地方都要带上该token,然后服务器端验证token,成功返回所需要的结果,失败返回错误信息,让用户重新登录。其中,服务器上会给token设置一个有效期,每次APP请求的时候都验证token和有效期。

token+redis机制

token + redis机制是中心化的,每次验证token有效性时,都需要访问redis,其核心优点实服务端可以主动让token失效,缺点是每次都要进行redis查询。占用redis存储空间。

jwt机制

这是一种无状态身份验证机制,因为用户状态永远不会保存在服务器内存中。服务器受保护的路由将在授权头中检查有效的JWT,如果存在,则允许用户访问受保护的资源。由于JWT是独立的,所有必要的信息都在那里,减少了多次查询数据库的需求。

用户发起登录请求,验证通过后,服务端创建一个加密后的JWT信息,作为Token返回。在后续请求中JWT信息作为请求头,发给服务端。服务端拿到JWT之后进行解密,正确解密表示此次请求合法,验证通过;解密失败说明Token无效或者已过期。

jwt的优点主要有:

1.t是去中心化的,便于分布式系统使用;

2. 基本信息可以直接放在token中。user_id,session_id;

3. 功能权限信息可以直接放在token中。用bit位表示用户所具有的功能权限。其缺点有:服务端无法主动让token失效,另一个是无法很好地控制payload的数据量。

小结

jwt和token+redis两种方案,没有最优,只有结合不同的业务场景,寻求最适合的方案。


用jwt还是用redis和token - 数据库 - 前端|
  • 查询mysql io,mysql父子关系怎么查 - 数据库 - 前端,zodb mysqlfactory
  • 查询mysql io,mysql父子关系怎么查 - 数据库 - 前端,zodb mysqlfactory | 查询mysql io,mysql父子关系怎么查 - 数据库 - 前端,zodb mysqlfactory ...

    用jwt还是用redis和token - 数据库 - 前端|
  • 做ORACLERAC - 数据库 - 前端|
  • 做ORACLERAC - 数据库 - 前端| | 做ORACLERAC - 数据库 - 前端| ...

    用jwt还是用redis和token - 数据库 - 前端|
  • 如何查看AI文件是哪个版本何存的 - 网络|
  • 如何查看AI文件是哪个版本何存的 - 网络| | 如何查看AI文件是哪个版本何存的 - 网络| ...