axios的配置   公共路径配置    拦截器的使用

 //这个文件是根组件 new Vue,所有所需的模块和对象都要在new Vue之前配置好

 import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css' //手动引入
import axios from 'axios' //引入axios文件
//将axios添加到vue的原型对象中,
// 实例对象可以直接使用原型对象中的属性和方法
//所有的组件都是vue的实例,所有组件都可通过 this.$http使用axios
// 说明:只要是像axios这样得第三方库(与vue没有任何关系),都应该通过这种方式统一去导入
Vue.prototype.$http=axios //以后再组件中 使用 this.$http就可使用axios //配置公共路径
// 配置好公共路径后,每次使用axios发送请求,只需要写当前接口的路径(比如'/product')
// axios在发送请求之前,会将baseUrl + '/product' 得到完整的路径,才会发送请求
axios.defaults.baseURL='http://localhost:8888/api/private/v1' // axios.defaults.withCredentials=true //让axios的请求携带验证信息到服务端(钥匙) // 只要配置了拦截器,那么所有的请求都会走拦截器
// 因此,可以在拦截器中统一处理headers(处理:除了登录接口以外的所以接口,都需要将token传递给服务器)
// 请求拦截器(Add a request interceptor )
axios.interceptors.request.use(
function (config) {
//在请求发送之前做一些事情
// endsWith 字符串的方法,用来判断是不是以参数结尾的,如果是返回值为true
if(!config.url.endsWith('/login')){// 判断如果是登录接口,就不需要添加 Authorization 请求头
config.headers['Authorization']=localStorage.getItem('token') //将token设置在请求头,传递给服务器接口,这样才能正确的调用这个接口
}
return config;
},
); // 响应拦截器(Add a response interceptor)
axios.interceptors.response.use(
function (response) {
//在获取到响应的时候做一些事情,
if(response.data.meta.status===401){//只要token失效,就跳转回登录页面
//因为现在不是在组件中,因此无法通过this.$router来访问到路由实例
// 但是可以直接通过 上面导入的路由模块中的 router来访问到路由
router.push('/login') //跳转到登录页
localStorage.removeItem('token')
}
console.log( response )
return response;
},
); //导入全局css样式 @表示src
import '@/assets/index.css' Vue.config.productionTip = false Vue.use(ElementUI) new Vue({
router,
store,
render: h => h(App)
}).$mount('#app')

vue中 aixos 常用配置 aixos拦截器 interceptors的使用的更多相关文章

  1. 在struts2中配置自定义拦截器放行多个方法

    源码: 自定义的拦截器类: //自定义拦截器类:LoginInterceptor ; package com.java.action.interceptor; import javax.servlet ...

  2. axios在vue中的简单配置与使用

    一.axios 简介 axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征:https://hzzly.github.io/2017/03/12/ ...

  3. SpringBoot 03: 常用web组件 - - - 拦截器 + Servlet + 过滤器

    常用web组件 拦截器 Servlet 过滤器 使用思想 创建自定义类 实现或者继承框架里的接口或类 将自定义类注册到框架中 使用自定义类 拦截器 说明 拦截器是SpringMVC中的一种对象,能拦截 ...

  4. 通过配置http拦截器,来进行ajax请求验证用户登录的页面跳转

    在.NET中验证用户是否登录或者是否过期,若需要登录时则将请求转向至登录页面. 这个流程在进行页面请求时是没问题的,能正确进行页面跳转. 然而在使用xmlhttprequest时,或者jq的getJs ...

  5. 配置struts2拦截器

    <!-- 配置拦截器 -->        <interceptors>            <!-- 声明拦截器 -->            <inte ...

  6. spring boot配置springMVC拦截器

    spring boot通过配置springMVC拦截器 配置拦截器比较简单, spring boot配置拦截器, 重写preHandle方法. 1.配置拦截器: 2重写方法 这样就实现了拦截器. 其中 ...

  7. Sturts2几个常用内建拦截器的介绍

    Sturts2几个常用内建拦截器的介绍:1)conversation:这是一个处理类型转换错误的拦截器,它负责将类型转换错误从ActionContext中取出,并转换成Action的FieldErro ...

  8. SpringMVC配置了拦截器(interceptors)却显示不出css、js样式的解决办法

    首先因为在web.xml里面配置了 <filter-mapping> <filter-name>characterEncodingFilter</filter-name& ...

  9. SpringBoot中过滤器、监听器以及拦截器

    属于javax.servlet所提供的Api 拦截器原理 简单来讲是通过动态代理实现,被访问的目标方法通过代理类(方法)来执行,这样我们就可以在真正要执行的方法执行前.后做一些处理: 通过拦截器这种方 ...

随机推荐

  1. 二、SQL Server 分页

    一.SQL Server 分页 --top not in方式 select top 条数 * from tablename where Id not in (select top 条数*页数 Id f ...

  2. IBM IMM默认ID

    默认ID: http://192.168.70.125用户名:USERID密码:PASSW0RD (数字0)

  3. DB count check for TABLES VIEWS PROCEDURES TRIGGERS

    SELECT DISTINCT(TABLESPACE_NAME) FROM ALL_TABLES; SELECT COUNT(*) FROM ALL_TABLES where TABLESPACE_N ...

  4. 从1<2<3的语法糖说起

    python有一个很有意思的语法糖你可以直接写1<2<3. 这复合我们通常意义上的数学不等式,但对学过C等语言其实是有疑惑的. 我们知道不等式返回的其实是个Bool值,在C中是1,0因此C ...

  5. 第四章 走进jVM

    4.1字节码 java文件编译成字节码后由默认解释执行,热点代码编译执行.方法调用到一定程度的时候,进行JIT编译成机器码执行,后面直接运行JIT编译结果(机器码). 4.2类加载过程 加载链接初始化 ...

  6. 罗技K380使用手册

    Ipad最佳伴侣|码字神器|罗技K380|附使用指南 ———— 为了方便平时在家处理工作➕写小红书笔记,年初买了个Ipad2018 我以前买过一个罗技的K480,因为太重了不方便携带,于是又入了K38 ...

  7. Ubunu12.04 vncserver xstartup配置文件

    以下有效: #!/bin/sh # Uncomment the following two lines for normal desktop: unset SESSION_MANAGER #exec ...

  8. centos6 / centos7 安装apache

    =================centos6.1 安装apache===================== 安装: yum -y install httpd 启动 /etc/init.d/htt ...

  9. pytest 教程

    https://blog.csdn.net/lb245557472/article/details/90341297 https://blog.csdn.net/yyang3121/article/d ...

  10. C++ 概率算法 利用蒙特卡罗算法计算圆周率

    概率算法大致可分为4种形式: 数值概率算法: 蒙特卡罗算法: 拉斯维加斯算法: 舍伍德算法: 计算蒙特卡罗概率的算法实现: #include "stdio.h" #include ...