【发布时间】:2021-10-02 03:50:36
【问题描述】:
我正在考虑实施刷新令牌的适当模式,但在几个步骤中,我有一些问题。我在前端使用nextjs 和axios,在后端使用cookie-session 表达。 以下是我正在考虑的步骤:
- 客户端发送登录请求。登录后,我将访问令牌放入会话对象中,并将刷新令牌放入 res.cookie,既安全又 httpOnly。
// for simplicity options are left out
req.session = { accessToken };
res.cookie("refreshToken", refreshToken)
- 在每次使用 axios 的请求时,我只提供访问令牌。这是第一个问题出现的地方。如果两者都是 httpOnly,我将如何只提供访问令牌而不发送刷新令牌?
- 如果访问令牌有效,请执行所需的任何操作。如果没有,则需要获取刷新令牌并将其与存储的令牌进行比较,依此类推。这是第二个问题。虽然我知道我需要在此步骤中检索刷新令牌,但我该如何正确执行?
如果有更多建议会很好,谢谢。
[编辑] 经过一番思考,我意识到使访问令牌不是 httpOnly 将允许我仅发送访问令牌,这将解决我的问题。但如果这不正确,请告诉我。
【问题讨论】:
标签: express cookies axios jwt refresh-token