【问题标题】:Logging out the user when token has expired - react redux令牌过期时注销用户-react redux
【发布时间】:2018-07-30 08:12:37
【问题描述】:

我只是想知道你们采取了什么方法来实现在令牌过期并且从后端收到 401 未授权响应时注销用户的功能。目前我正在使用 axios 拦截器。

【问题讨论】:

  • 阻止用户界面(使用全局状态(并显示类似“您已注销”的模式)

标签: reactjs redux react-boilerplate


【解决方案1】:

嗯嗯嗯。你从来没有向我们展示过任何代码来帮助回答这个问题, 但是,在我的应用程序中,我在成功登录后使用了setTimeout(()=>{}, 60000) 函数,我将超时设置为 cookie 将过期的确切时间,并且在到达该时间时会触发一个动作..所以我会触发一个 logOut操作并将商店中的用户详细信息设置为初始状态为 null 并将用户重定向到登录页面.. 就这么简单,也许这个小代码可能会有所帮助

我将此方法放在 App.js 组件或应用程序提供的根组件中,其中 auth.id 是经过身份验证的用户 id

componentWillReceiveProps(nextProps) {
        if(nextProps.auth.id !== this.props.auth.id) {
                setTimeout(() => {
                    this.props.onLogoOut(nextProps.auth.id) //passing the user id
                }, 60000) //one minute 

        }
    }

希望它足够清楚

【讨论】:

    猜你喜欢
    • 2020-09-11
    • 2021-07-31
    • 2017-12-12
    • 1970-01-01
    • 2020-04-16
    • 2021-10-05
    • 2021-09-14
    • 2020-02-20
    • 2022-01-25
    相关资源
    最近更新 更多