首页前端开发VUEvue2封装axios接口代码

vue2封装axios接口代码

时间2023-04-07 14:57:01发布访客分类VUE浏览1043
导读:@toc在/utils新建requestimport axios from 'axios' import bus from '@/utils/bus' import {Message} from 'element-ui' const se...

@toc

在/utils新建request

import axios from 'axios'
import bus from '@/utils/bus'
import {
Message}
 from 'element-ui'

const service = axios.create({

  baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url
  // baseURL: '/api', // url = base url + request url
  timeout: 100000, // request timeout
}
    )

service.interceptors.request.use(
  config =>
 {
    
    let currentUser = JSON.parse(sessionStorage.getItem("UserInfo"))
    if (currentUser &
    &
 currentUser.token) {

      config.headers['Authorization'] = 'token ' + currentUser.token
    }

    return config
  }
    ,
  error =>
 {

    console.log(error)
    return Promise.reject(error)
  }
    
)

// response interceptor
service.interceptors.response.use(
  response =>
 {

    return response
  }
    ,
  error =>
 {
    
    const res = error.response.data
    const status = error.response.status
    if (status >
= 500) {

        Message.error('服务繁忙请稍后再试')
    }
     else if (status >
= 400) {

      if (res.status === 401) {

        Message.warning("您的账号登录已失效, 请重新登录")
        bus.$emit('logout')
      }
 else {

        Message.error("未知错误")
        console.error(error)
      }

    }

    return Promise.resolve(error)
  }

)
export default service

接口js页面中

// 卡片管理模块
import request from '@/utils/request'


// get
export function getList(params) {

  return request({

    url: '/',
    method: 'get',
    params
  }
)
}



// POST
export function postList(data) {

  return request({

    url: '/',
    method: 'POST',
    responseType: "arraybuffer",
    data
  }
)
}

vue页面

//引入
import {

  getList,
  postList
}
     from "@/api/comparison.js";
    



//使用
 getList().then((res) =>
 {

      }
    );
    

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

vue.js

若转载请注明出处: vue2封装axios接口代码
本文地址: https://pptw.com/jishu/2252.html
vue3安装vant 按需引入和全局引入 加密了100个小姐姐的PDF文档,1行代码搞定,网友:快男!

游客 回复需填写必要信息