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 相关文章推荐
javascript 字符 Escape,encodeURI,encodeURIComponent
Jul 09 Javascript
一个报数游戏js版(约瑟夫环问题)
Aug 05 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
Jun 06 Javascript
javascript实现的固定位置悬浮窗口实例
Apr 30 Javascript
javascript函数自动执行常用方法汇总
Mar 28 Javascript
jquery实现input框获取焦点的方法
Feb 06 Javascript
JavaScript数据类型和变量_动力节点Java学院整理
Jun 26 Javascript
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
Sep 14 Javascript
在JS循环中使用async/await的方法
Oct 12 Javascript
nuxt.js中间件实现拦截权限判断的方法
Nov 21 Javascript
Vue 使用计时器实现跑马灯效果的实例代码
Jul 11 Javascript
JS前端canvas交互实现拖拽旋转及缩放示例
Aug 05 Javascript
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中使用Akismet防止垃圾评论的代码
2011/06/10 PHP
百度工程师讲PHP函数的实现原理及性能分析(三)
2015/05/13 PHP
PHP面向对象程序设计(OOP)之方法重写(override)操作示例
2018/12/21 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
php获取是星期几的的一些常用姿势
2019/12/15 PHP
Track Image Loading效果代码分析
2007/08/13 Javascript
javascript 设置文本框中焦点的位置
2009/11/20 Javascript
jQuery基础知识filter()和find()实例说明
2010/07/06 Javascript
Json对象与Json字符串互转(4种转换方式)
2013/03/27 Javascript
表单验证的完整应用案例探讨
2013/03/29 Javascript
javascript判断非数字的简单例子
2013/07/18 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
JavaScript正则表达式exec/g实现多次循环用法示例
2017/01/17 Javascript
JavaScript实现短信倒计时60s
2017/10/09 Javascript
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
Vue3.0数据响应式原理详解
2019/10/09 Javascript
vue+iview实现文件上传
2020/11/17 Vue.js
如何在 Vue 表单中处理图片
2021/01/26 Vue.js
[42:52]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
python django 访问静态文件出现404或500错误
2017/01/20 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
Python实现数据结构线性链表(单链表)算法示例
2019/05/04 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
python如何使用Redis构建分布式锁
2020/01/16 Python
CSS实现定位元素居中的方法
2015/06/23 HTML / CSS
CSS3制作圆形滚动进度条动画的示例
2020/11/05 HTML / CSS
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
J2EE包括哪些技术
2016/11/25 面试题
送餐员岗位职责范本
2014/02/21 职场文书
中文专业毕业生自荐信
2014/05/24 职场文书
小学优秀班集体申报材料
2014/05/25 职场文书
乡镇党员群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
Go语言-为什么返回值为接口类型,却返回结构体
2021/04/24 Golang
Java练习之潜艇小游戏的实现
2022/03/16 Java/Android
台积电称即便经济低迷也没有降价的计划
2022/04/21 数码科技