javascript - 在哪里发送 JWT token ?

标签 javascript node.js reactjs express jwt

我正在使用 JWT 进行用户登录/注册,但我对发送/接收 token 有疑问。

目前,我将 token 作为属性存储在服务器中启动的 JSON 对象中,然后将其发送到前端。客户端收到对象后,会将 token 存储为 cookie。从客户端到服务器的每个 POST 请求的正文中都会有一个 token 属性,来自服务器的响应也将具有该 token 作为属性。

这样可以吗,还是我应该将 token 作为请求/响应中的 header 发送?

使用:React (+DOM)、JavaScript、Express、Node.js

最佳答案

将 JWT token 存储在 Cookie 中就足够了。您不需要在请求正文中发送到 token 或在响应中返回。

良好实践

  1. 将 JWT 存储在 cookie 中,模式为 http-onlyis-secure: true,这样 JavaScript 就看不到此 token ,只能使用 https 安全层传输 token 。

  2. 在每个ajax请求中添加自定义请求 header ,并在后端验证此 header 以避免crsf攻击。

关于javascript - 在哪里发送 JWT token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48000331/

相关文章:

javascript - 有没有办法将 JS 属性的 setter/getter 抽象为对象的原型(prototype)?

javascript - 使用过滤器获得正确的选择选项

javascript - 如何使用 React JS、Redux 和 Express 进行身份验证?

javascript - React JSX for 循环仅显示最后一个值

reactjs - params 对象(API key )未与 axios.create 一起发送

javascript - true false 测验控制潜水可见或隐藏

javascript - Promise 在解决之前不等待嵌套 promise

node.js - 在 nodejs 中执行长时间运行的 powershell 脚本

node.js - 使用 bunyan logger 登录 nodejs

node.js - Node/React 应用程序不会部署到 Heroku