Javascript 在特定时间触发函数

Javascript 在特定时间触发函数,javascript,jwt,Javascript,Jwt,问题是我的应用程序(C#后端/JS前端)中实现了JWT身份验证。我想在超过用户的令牌过期时间后,自动将用户重定向到登录页面(将其踢出) 我正在研究如何实现这一点,并得出结论,我想要一种优雅的方式在给定日期的特定时间触发函数 const-tokenExpiresIn=10000;// setInterval和setTimeout都很好,它们是根据它们的约定触发的 因为你正在寻找更多的选择,这里是我为一个内部网站所做的 对所有API响应使用拦截器来捕获错误。你的情况是40倍 每x秒对auth api

问题是我的应用程序(C#后端/JS前端)中实现了JWT身份验证。我想在超过用户的令牌过期时间后,自动将用户重定向到登录页面(将其踢出)

我正在研究如何实现这一点,并得出结论,我想要一种优雅的方式在给定日期的特定时间触发函数


const-tokenExpiresIn=10000;// setInterval和setTimeout都很好,它们是根据它们的约定触发的

因为你正在寻找更多的选择,这里是我为一个内部网站所做的

  • 对所有API响应使用拦截器来捕获错误。你的情况是40倍
  • 每x秒对auth api执行一次设置间隔。(交通可能受到影响)
  • 上次加载页面时使用本地存储,并在x分钟后执行强制重定向
    我希望它能有所帮助。

    您的应用程序中是否有页面刷新或重新加载?不,这是一个单页应用程序。不过,我会在每个http请求上验证令牌。也就是说后端已经覆盖,只是试图像现代应用程序(如网上银行等)一样提供对自动重定向的支持,因为JWT将在特定时间过期,我建议您根据一些基本算法配置
    setTimeout
    。如果页面重新加载/刷新,则应再次触发此例程。FWIW,
    setInterval
    在每秒执行一次并且只进行一次日期比较时并不特别昂贵。在这里利用您的后端优势。当发出新请求时,只需编写一个helper函数来检查返回值,如果说返回值是401,则将用户重定向到登录页面…并在重新验证后使用回调返回到他们所在的页面?是的,问题是,不是每个页面/操作都可以有HTTP请求。例如,他们可以加载一个页面,将一堆数据加载到客户端,然后离开计算机。如果是5分钟或其他时间,我想通过重定向和注销他们,让他们被迫重新登录,并在他们实际办公时做他们正在做的事情,将他们踢出去。