vue 前端控制 保持30分钟登录状态

时间戳 vue 前端控制 保持30分钟登录状态
router.beforeEach((to, from, next) => {
  /* 路由发生变化修改页面title */
  if (to.meta.title) {
    document.title = to.meta.title
  }
  // if (to.path == '/login') {
  //   //保存当前路由
  //   localStorage.setItem('preRoute', router.currentRoute.fullPath)
  //   next()
  //   return
  // }

  f (localStorage.getItem('start_time')) {
    if (new Date().getTime() - localStorage.getItem('start_time') >= 30 * 60 * 1000) {
     localStorage.clear()
     next({
       path: '/login'
     })
       return
     }
  }

    next()

})
ajax 请求配合
 axios(params)
    .then(res => {
      if (res && (res.unauthorized || res.statusCode === 401)) {
        window.location.href = '/#/login'
      }
      if (res.status == 204) {
        defer.resolve()
        return
      }
      if (res.type === 'application/x-msdownload') {
        redirectToIframe(res.request.responseURL)
      } else if (res.data) {
        if (res.data.code === 0) {
          localStorage.setItem('start_time', new Date().getTime())  // -------设置时间戳
          defer.resolve(res.data)
        } else if (res.data.code === 7) {
          // sessionStorage.removeItem('token')
          // window.location.href = '/#/login'
          
        } else {
          Message({
            message: res.data.msg,
            type: 'error'
          })
          defer.reject(res.data)
        }
      } else {
        defer.reject()
      }
    })
    .catch(err => {
      defer.reject(err)
    })
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值