zoukankan      html  css  js  c++  java
  • axios 请求

    import axios from "axios";
    import errorCode from "@/utils/errorCode";
    // 根据环境不同引入不同api地址
    import { baseApi } from '@/config'
    
    axios.defaults.headers["Content-Type"] = "application/json;charset=utf-8";
    // 创建axios实例
    const service = axios.create({
      // axios中请求配置有baseURL选项,表示请求URL公共部分
      // baseURL: "http://192.168.5.39:8080",
      baseURL: baseApi,
      // 超时
      timeout: 20000,
    });
    // request拦截器
    service.interceptors.request.use(
      (config) => {
        // 是否需要设置 token
        // const isToken = (config.headers || {}).isToken === false;
        // if (getToken() && !isToken) {
        //   config.headers["Authorization"] = "Bearer " + getToken(); // 让每个请求携带自定义token 请根据实际情况自行修改
        // }
        return config;
      },
      (error) => {
        console.log(error);
        Promise.reject(error);
      }
    );
    
    // 响应拦截器
    service.interceptors.response.use(
      (res) => {
        // 未设置状态码则默认成功状态
        const code = res.status || 200;
        console.log("axios,", res);
        // 获取错误信息
        const msg = errorCode[code] || res.data.message || errorCode["default"];
        if (code === 401) {
          // MessageBox.confirm(
          //   "登录状态已过期,您可以继续留在该页面,或者重新登录",
          //   "系统提示",
          //   {
          //     confirmButtonText: "重新登录",
          //     cancelButtonText: "取消",
          //     type: "warning"
          //   }
          // ).then(() => {
          //   store.dispatch("LogOut").then(() => {
          //     location.href = "/index";
          //   });
          // });
        } else if (code === 500) {
          // this.$message.error(msg);
          return Promise.reject(new Error(msg));
        } else if (code !== 200) {
          // this.$message.error(msg);
          return Promise.reject("error");
        } else {
          return res.data;
        }
      },
      (error) => {
        console.log("err" + error);
        let { message } = error;
        if (message == "Network Error") {
          message = "后端接口连接异常";
        } else if (message.includes("timeout")) {
          message = "系统接口请求超时";
        } else if (message.includes("Request failed with status code")) {
          message = "系统接口" + message.substr(message.length - 3) + "异常";
        }
        this.$message.error(message);
        return Promise.reject(error);
      }
    );
    
    export default service;
    

      

    未闻花名
  • 相关阅读:
    Btrace
    ThreadPoolExecutor线程池参数设置技巧
    工具篇-NotePad++/JSON格式化
    springcloud-- Alibaba-nacos--支持的几种服务消费方式
    @RequestParam和@RequestBody的区别
    Excel 2013如何判断单元格里是否包含某个字符
    redis 通配符批量删除key
    字节真题 ZJ26-异或:使用字典树代替暴力破解降低时间复杂度
    约瑟夫环问题解决方法时间复杂度分析
    九字真言
  • 原文地址:https://www.cnblogs.com/duokexiao/p/15425041.html
Copyright © 2011-2022 走看看