【问题标题】:JWT Authentication with React/Node使用 React/Node 进行 JWT 身份验证
【发布时间】:2020-07-03 00:47:35
【问题描述】:

我在尝试在 Node/React 应用程序中使用 JWT httpOnly 实现身份验证时遇到“奇怪”行为。

基本上我有一个“登录”服务,如果用户和密码正确,它会提供一个包含 httpOnly 访问令牌的响应。如果是,则响应如下:

(NODEjs - 登录 sn-p)

res.cookie(
  "access_token",
  { token: token },
  {
    maxAge: 3600,
    httpOnly: true
  }
)

这意味着从现在开始我只能通过使用此 Web 令牌调用我的 API,在这种情况下使用参数 withCredentials = true

(前端片段)

handleTokenVerification(event){   
  axios.post('/auth/getUserInfo', {withCredentials: true})
  .then(function(data) {
      console.log(data)
  }).catch(err =>{
      console.log('ERRO: ' + err)
  })
  event.preventDefault()
}

第一次调用 API 时它确实有效,之后,似乎这个 cookie 被重置了一些,因为 de API 不再工作了。

【问题讨论】:

  • 这里可能还不足以知道发生了什么,但是:您知道如何检查浏览器的调试工具以查看正在发送的 cookie 吗?即,您能否验证您的假设,即 cookie 正在被重置?

标签: node.js reactjs axios jwt


【解决方案1】:

问题出在 maxAge: 3600 参数中。太低了,我无法在过期之前执行几个请求。

【讨论】:

    猜你喜欢
    • 2020-07-05
    • 2020-09-02
    • 2016-04-07
    • 2023-03-27
    • 2021-05-29
    • 2017-07-30
    • 2018-06-30
    • 2018-08-03
    • 2021-02-06
    相关资源
    最近更新 更多