【问题标题】:I'm authenticating the frontend app, using cookies session, but how to authenticate a user using ReactJS + Springbot?我正在使用 cookie 会话对前端应用程序进行身份验证,但是如何使用 ReactJS + Springbot 对用户进行身份验证?
【发布时间】:2021-06-10 10:08:36
【问题描述】:
我必须在涉及前端(react)和后端(springboot)的场景中对用户进行身份验证。
在处理之后我意识到 Springboot 响应包含一个 set-cookie 标头,但实际上 Springboot 返回的 cookie 会话从未在用户浏览器中设置,所以我假设 cookie 是在前端应用程序中设置的,这意味着基本上前端应用程序是经过身份验证的,但没有用户,这是有道理的,因为前端最终发送用户/密码。
人们通常如何处理这种情况?我是否应该在用户浏览器中也有一个 cookie 会话(到目前为止我的想法)?前端是否应该在浏览器中存储不同的内容以跟踪登录用户?
【问题讨论】:
标签:
reactjs
spring-security
session-cookies
【解决方案1】:
理想情况下,我会使用基于 Bearer 令牌的身份验证,因为我也可以将后端用于移动应用程序。
基本上,您需要将 JWT 存储在本地存储或密钥链中。
您可以使用 JWT 令牌进行身份验证。从令牌中获取用户详细信息以在前端使用它。
【解决方案2】:
您需要在 localStorage 中设置会话令牌。将其存储在 localStorage 中后,您需要检查每个受保护路由上的会话令牌。如果它与您在后端的相同,那很好。但是,如果它已过期,您需要运行注销 api。