Reactjs - 来自 JWT 令牌的当前用户
Posted
技术标签:
【中文标题】Reactjs - 来自 JWT 令牌的当前用户【英文标题】:Reactjs - Current User from JWT token 【发布时间】:2019-01-04 11:00:20 【问题描述】:所以,我创建了一个 django-rest-framework backend 与 JWT 身份验证 现在,我正在尝试解决问题当用户手动提供 URL 时,我必须检查用户是否以前登录过。
因此,当用户登录时,我将 token 存储到 localStorage
。我正在这样做:
componentDidMount()
if (localStorage.getItem('token'))
// fetch current user
this.props.ctx.toggleLoggedIn()
// this.props.ctx.setUsername('')
如果我在localStorage
中找到token
,那么我必须获取 当前用户,然后toggleLoggedIn 以及在context
中设置当前用户的用户名。
所以,我计划创建另一个 API end-point,它在给出token
时提供当前用户。问题是我不知道如何开始!
【问题讨论】:
【参考方案1】:这可能是我误解了,但对我来说,你似乎是在试图解决这个问题。当用户登录时,获取令牌并将其存储在 localStorage 中。登录后立即获取用户配置文件并将其存储。
如果用户手动提供了一个 url,那么您现在应该同时拥有令牌和用户。如果您没有令牌或令牌已过期,请重定向到登录页面并清除本地存储。
我会创建一个高阶组件来检查令牌是否有效,并将其用于所有“受保护”页面。
【讨论】:
以上是关于Reactjs - 来自 JWT 令牌的当前用户的主要内容,如果未能解决你的问题,请参考以下文章
无法读取未定义的 reactjs JWT 身份验证的属性“令牌”
我可以在哪里将 JWT 令牌存储在 React js 中以验证应用程序后端的各种路由?