【发布时间】:2021-03-01 04:51:37
【问题描述】:
问题是在比较两个日期时,令牌将在大约 17 小时后过期,这是错误的,因为在生成时它应该只多 1 分钟。
如果有人可以帮助我,我非常感激
【问题讨论】:
标签: javascript node.js jwt
问题是在比较两个日期时,令牌将在大约 17 小时后过期,这是错误的,因为在生成时它应该只多 1 分钟。
如果有人可以帮助我,我非常感激
【问题讨论】:
标签: javascript node.js jwt
看起来您的代码假定属性的过期和发布时间定义为毫秒(60000 毫秒 = 60 秒 = 1 分钟)。
但是,JWT 规范声明 exp 和 iat 使用 'Seconds since the Epoch.在这里查看答案:https://stackoverflow.com/a/39926886/12086953
因此,只需将您的第一个代码 sn-p 中的值更改为在 60 秒内到期,而不是 60000 秒(不到 17 小时),如下所示:
const myToken = jwt.sign({ id: '12345677', username: 'emailtest@uu.com' }, 'mysecretjsonwebtoken', { expiresIn: 60, audience: '12345677' })
【讨论】: