Vue 路由拦截、http拦截
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue 路由拦截、http拦截相关的知识,希望对你有一定的参考价值。
参考技术A 第一步:路由拦截定义完路由后,我们主要是利用vue-router提供的钩子函数beforeEach()对路由进行判断。
每个钩子方法接收三个参数:
其中,to.meta中是我们自定义的数据,其中就包括我们刚刚定义的requireAuth字段。通过这个字段来判断该路由是否需要登录权限。需要的话,同时当前应用不存在token,则跳转到登录页面,进行登录。登录成功后跳转到目标路由。
登录拦截到这里就结束了吗?并没有。这种方式只是简单的前端路由控制,并不能真正阻止用户访问需要登录权限的路由。还有一种情况便是:当前token失效了,但是token依然保存在本地。这时候你去访问需要登录权限的路由时,实际上应该让用户重新登录。
这时候就需要结合 http 拦截器 + 后端接口返回的http 状态码来判断。
要想统一处理所有http请求和响应,就得用上 axios 的拦截器。通过配置http response inteceptor,当后端接口返回401 Unauthorized(未授权),让用户重新登录。
拦截器
这样我们就统一处理了http请求和响应的拦截.当然我们可以根据具体的业务要求更改拦截中的处理.
原文链接: https://www.cnblogs.com/guoxianglei/p/7084506.html
更多精彩请关注: Vue专题
以上是关于Vue 路由拦截、http拦截的主要内容,如果未能解决你的问题,请参考以下文章
vue+axios 前端实现登录拦截(路由拦截http拦截)