如何从 expressjs 发送 jwt 令牌以响应应用程序? [关闭]
Posted
技术标签:
【中文标题】如何从 expressjs 发送 jwt 令牌以响应应用程序? [关闭]【英文标题】:How to send jwt token from expressjs to react application? [closed] 【发布时间】:2021-03-05 12:31:40 【问题描述】:我想从 expressjs 路由器发送 jwt 令牌以响应应用程序。
我使用google-passport
登录。对于登录,react 应用程序将其重定向到服务器,一旦服务器对用户进行身份验证,它就会重定向回 react 应用程序。
在查询中发送令牌不是一个好的选择。
发送令牌的其他安全选项是什么?
节点服务器在 8080
上运行,而 react 应用在 3000
上运行。
我正在使用express-session
来维护会话。不知道能不能用这个。以及如何从 React 应用中读取此会话。
谢谢
【问题讨论】:
可能是授权标头? 【参考方案1】:您可以将 jwt 作为 Authorization
标头传递。
因此,在您的 fetch 请求(或 axios )中,只需添加一个标头,例如,
headers:
'Authorization': `Bearer $YourJWT`
但对于 express-session,它将会话数据存储在服务器中(内存/内存中的数据库,如 redis/数据库,如 MongoDB)
它向客户端发送一个cookie,由客户端返回,并在服务器端与会话数据进行验证。这称为有状态身份验证,因为服务器使用它来维护经过身份验证的用户的状态。
【讨论】:
以上是关于如何从 expressjs 发送 jwt 令牌以响应应用程序? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用基于网站的 ExpressJs 设置 CORS 和 JWT 令牌验证