我正在使用 JWT 保护节点 js url https://github.com/auth0/express-jwt
要创建 JWT 令牌用户会话,我只需执行以下操作:
-> auth/signup
-> jwt.sign(user_profile,secret,expireInMinutes:{900000000 /*almost never expires*/});
或者在登录调用的情况下
-> auth/login
-> jwt.sign(user_profile,secret,expireInMinutes:{900000000 /*almost never expires*/});
每次调用受保护的 url 时,我都会检查req.user
JWT 中间件是否自动设置。
现在我想知道:
1 - 调用 sign() 时 JWT 令牌存储在哪里?
2 - 每次调用受保护的 url 时我都必须验证()令牌吗?如果是,为什么?
3 - 当我为已签名的用户设置新令牌时,旧令牌(如果存在)会被删除吗?如果到期未设置或例如为 5 年怎么办?
4 - 为什么我不能在同一浏览器/应用程序页面上设置新令牌?如果我注册一个新令牌但令牌匹配(我检查过),我会收到无效签名错误这就像我不能在同一个浏览器上登录超过 1 个用户