Rails + React app for Auth 中的 JWT 有什么用

What's the use of JWT in Rails + React app for Auth

我不明白 JWT 令牌的使用..
谁能给我解释一下?
因为目前我正在开发一个应用程序(rails + React),我想使用 devise + jwt 进行身份验证,并使用 React 进行前端。

其实我是这么理解的:

1/ 如果用户想要登录:他填写表单,React 从表单中获取数据并向 Rails API 发出这些信息的 post 请求。

2/ Rails API 如果信息与注册用户匹配,则在数据库中检查这些信息,如果匹配,则 Rails API 将创建一个 JWT令牌并将此令牌发送给 React。
用户现在已登录,因为 Rails API 找到了匹配的用户。

3/ React 收到 JWT 令牌。 ( ?? 这个token有什么用?? )

谢谢

既然你是 return api 。反应正在消耗它。 Jwt help to return 你可能需要在你的前端保持反应的数据。用户名或电子邮件等数据。 示例:使您网站的 header 显示用户已登录。

我的回复并不特定于 Rails/React,而是针对所有使用 JWT 令牌的网络技术:

你说的对。从第 3 点开始,所有从 React 向 Rails 后端发出的请求都必须包含 header Authorization: Bearer <token>.

当 Rails 看到 header 时,它能够:

  • 通过检查其签名来检查令牌是否有效
  • 对其进行解码并提取其中存储的所有信息。

请记住,JWT 令牌可以包含后端想要存储在其中的任何信息。并且客户端 无法篡改它 ,因为它是加密签名的,它会使它的签名无效。

上述属性(您可以在其中存储任何内容,前端随每个请求发送它并且没有人可以篡改它)帮助任何 Web 应用程序能够:

既然你是 return api 。反应正在消耗它。 Jwt help to return 你可能需要在你的前端保持反应的数据。用户名或电子邮件等数据。 示例:使您网站的 header 显示用户已登录。 jwt 在前端的主要目标基本上是 auth。 分开。 如果您使用的是整体式应用程序,您需要为用户处理 session 在 React 案例中,jwt 代表 session

jwt在前端的主要目的基本上是auth或other。 分开。如果您使用的是整体应用程序,请记住您为用户处理会话在反应情况下,jwt 代表会话