检查cookie是否到期并在响应

时间:2016-06-03 04:59:08

标签: javascript cookies reactjs

我正在使用react-cookie npm包来处理反应中的cookie。我想要做的是检查cookie是否存在,如果没有,则将用户重定向到登录页面。但是,cookie的有效期为30分钟,我想检查cookie的到期时间,并再次将用户重定向到登录页面。

目前我正在componentWillMount生命周期中执行此操作,但是如果仅在刷新页面时检查条件。我知道我应该使用componentWillUpdate生命周期做出反应并检查状态,但我无法弄清楚如何做到这一点。

这是我的代码。

componentWillMount() {

        let  getCookie = cookie.load('token');
        let exp = cookie.load('exp');
        console.log(getCookie);
        if(getCookie === undefined || ((exp - new Date().getTime()) < 0)) {
            let url = 'http://localhost:8080/login.html'
            window.location.href =  url
            console.log(url)
        } 

    }

感谢您提前提供任何帮助。

在JavaScript document.cookie中。 Cookie会在设定的到期时间后自动过期。同样地,react-cookie也包含opt expires。有没有办法可以用它来达到我的目的。

1 个答案:

答案 0 :(得分:0)

如果使用setTimeout创建计时器怎么办?

之类的东西
setTimeout(function() {
  // check again for expire and redirect
}, cookie.load('exp') - new Date().getTime())

willMountdidMount生命周期