Vue利用路由钩子token过期后跳转到登录页的实例


Posted in Javascript onOctober 26, 2017

在Vue2.0中的路由钩子主要是用来拦截导航,让它完成跳转或前取消,可以理解为路由守卫。

分为全局导航钩子,单个路由独享的钩子,组件内钩子。

三种 类型的钩子只是用的地方不一样,都接受一个函数作为参数,函数传入三个参数,分别为to,from,next。

其中next有三个方法

(1)next(); //默认路由

(2)next(false); //阻止路由跳转

(3)next({path:'/'}); //阻止默认路由,跳转到指定路径

这里我使用了组件内钩子进行判断token过期后跳转到登录页,其他两种钩子可以去官网查看。

//路由前验证
  beforeRouteEnter(to, from, next) {
   let postdata = {
    meta: {
     client_version: "1.0",
     client_type: "1",
    },
    data: {
     access_token: $.cookie("authtoken").toString()
    }
   }

   $.ajax({
    url: urls.serchuser,
    type: 'POST',
    data: JSON.stringify(postdata)
   }).done(data => {
    data = JSON.parse(data);
    console.log(data);
    if(data.status == 10050) {
     next(false);
     location.href = 'login.html';
    }else{
     next();
    }
   })
  }

实现方法很简单,在路由前向服务器发送请求,如果返回的数据表明token过期则阻止默认跳转,否则就正常跳转。

以上这篇Vue利用路由钩子token过期后跳转到登录页的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用JQuery在网页中实现分隔条功能的代码
Aug 09 Javascript
js制作的鼠标悬浮时产生的下拉框效果
Oct 27 Javascript
javascript unicode与GBK2312(中文)编码转换方法
Nov 14 Javascript
使用 jQuery.ajax 上传带文件的表单遇到的问题
Oct 31 Javascript
Bootstrap CSS组件之按钮组(btn-group)
Dec 17 Javascript
用JavaScript和jQuery实现瀑布流
Mar 19 Javascript
vue实现重置表单信息为空的方法
Sep 29 Javascript
微信小程序CSS3动画下拉菜单效果
Nov 04 Javascript
JavaScript中的各种宽高属性的实现
May 08 Javascript
详解Vue之事件处理
Jul 10 Javascript
jQuery实现开关灯效果
Aug 02 jQuery
Vue3中的Refs和Ref详情
Nov 11 Vue.js
vue路由跳转时判断用户是否登录功能的实现
Oct 26 #Javascript
webpack3之loader全解析
Oct 26 #Javascript
JS使用正则表达式找出最长连续子串长度
Oct 26 #Javascript
AngularJS实现的输入框字数限制提醒功能示例
Oct 26 #Javascript
JS处理数据四舍五入(tofixed与round的区别详解)
Oct 26 #Javascript
详谈构造函数加括号与不加括号的区别
Oct 26 #Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 #Javascript
You might like
小偷PHP+Html+缓存
2006/11/25 PHP
PHP编程中字符串处理的5个技巧小结
2007/11/13 PHP
PHP捕获Fatal error错误的方法
2014/06/11 PHP
php判断两个日期之间相差多少个月份的方法
2015/06/18 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
CSS JavaScript 实现菜单功能 改进版
2008/12/09 Javascript
jQuery与其它库冲突的解决方法
2010/06/25 Javascript
javascript中length属性的探索
2011/07/31 Javascript
alert和confirm功能介绍
2014/05/21 Javascript
使用js画图之画切线
2015/01/12 Javascript
javascript中sort()的用法实例分析
2015/01/30 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
jQuery.trim() 函数及trim()用法详解
2015/10/26 Javascript
js实现精确到秒的日期选择器完整实例
2016/04/30 Javascript
JavaScript实现翻页功能(附效果图)
2017/02/16 Javascript
js实现动态显示时间效果
2017/03/06 Javascript
React Form组件的实现封装杂谈
2018/05/07 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
2019/04/15 Javascript
Vue v-text指令简单使用方法示例
2019/09/19 Javascript
js+canvas实现两张图片合并成一张图片的方法
2019/11/01 Javascript
vue路由拦截器和请求拦截器知识点总结
2019/11/08 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
Vue2.x-使用防抖以及节流的示例
2021/03/02 Vue.js
Python常用内置模块之xml模块(详解)
2017/05/23 Python
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
如何在scrapy中捕获并处理各种异常
2020/09/28 Python
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
英国Flybe航空官网:欧洲最大的独立支线廉价航空公司
2019/07/15 全球购物
前台文员岗位职责及工作流程
2013/11/19 职场文书
大学生创业计划书的范文
2014/01/07 职场文书
档案室主任岗位职责
2014/02/12 职场文书
运动会稿件100字
2014/02/21 职场文书
大学新闻系应届生求职信
2014/06/02 职场文书
安全教育培训心得体会
2016/01/15 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书