赞
踩
新建axios-init.js文件
- import axios from 'axios';
-
- export default()=>{
- let loadingInstance; //创建Loading 的实例
- axios.defaults.baseURL = appConfig.xhr.baseURL; // 配置axios请求的地址
- axios.defaults.headers.post['Content-Type'] = 'application/json; charset=utf-8';
- axios.defaults.crossDomain = true;
- axios.defaults.withCredentials = true; //设置cross跨域 并设置访问权限 允许跨域携带cookie信息
- axios.defaults.headers.common['Authorization'] = ''; // 设置请求头为 Authorization
-
- //配置发送请求前的拦截器 可以设置token信息
- axios.interceptors.request.use(config => {
- return config;
- }, error => {
- loadingInstance.close();
- return Promise.reject(error);
- });
- }
-
- // 配置响应拦截器
- axios.interceptors.response.use(res => {
- loadingInstance.close();
- //这里面写所需要的代码
- if(res.data.code =='401'){
- //全局登陆过滤,当判读token失效或者没有登录时 返回登陆页面
- return false;
- };
- return Promise.resolve(res);
- }, error => {
- loadingInstance.close();
- return Promise.reject(error);
- }
- return Promise.reject(error);
- };
- return axios;
- );

在main.js里面引入
- import axiosInit from "./axios-init";
-
- //把axios 作为Vue的原型属性
- window.axios = axiosInit();
- Vue.prototype.$http = window.axios;
实际运用代码
this.$http.post(``,参数).then(res=>{}).catch(error=>{});
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。