Reactjs-JWT令牌的当前用户

时间:2018-07-27 10:21:32

标签: django reactjs django-rest-framework jwt

因此,我已经使用 JWT身份验证创建了 django-rest-framework 后端,现在,我正在尝试解决以下问题当用户手动提供 URL 时,我必须检查用户以前是否登录

因此,既然如此,我将在用户登录时将令牌存储到localStorage。我正在这样做:

componentDidMount() {
    if (localStorage.getItem('token')) {
        // fetch current user
        this.props.ctx.toggleLoggedIn()
        // this.props.ctx.setUsername('')
    }   
}

如果我在token中找到了localStorage,则必须获取当前用户 ,然后 toggleLoggedIn ,并context 中设置当前用户的用户名。

因此,我打算创建另一个 API 端点,当给定token时,该API提供当前用户。问题是我不知道该如何开始!

1 个答案:

答案 0 :(得分:1)

可能是我误会了,但对我来说,似乎您正在尝试解决此问题。用户登录时,获取令牌并将其存储在localStorage中。登录后立即获取用户个人资料并将其存储。

如果用户手动提供一个URL,则您现在应该同时具有令牌和用户。如果您没有令牌或令牌已过期,请重定向到登录页面并清除本地存储。

我将创建一个更高阶的组件来检查令牌是否有效,并将其用于所有“受保护的”页面。