如果这是一个愚蠢的问题,请原谅我。
正如标题所问,服务器端为每个请求解码 token 并不昂贵,存储和查找未解码的 token 不是更好吗? 你会将 session token 存储在 nodejs 对象还是 mongodb 中? Mongodb 将是另一次往返,但您可以使用 _id 轻松查找。(如果我错了,请纠正我,我正在学习,所以建议/资源 = 非常欢迎!)
最佳答案
视情况而定
仅验证签名意味着确保 token 是使用您的 key 生成的。
存储和检查 token 意味着您可以验证 token 是否由您的服务器创建。这样您还可以使单个 token 无效,例如如果用户丢失了他/她的手机,他/她可以使手机失效。
Redis 等键值数据库通常用于此类存储,因为它们非常可以很好地执行这些简单的放置/获取操作,并且每秒可为您提供数十万次操作。
关于javascript - 是否在服务器端存储未解码的 jwt token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32326831/