封装axios

2023-10-08 22:23:36发布
50

request.js

import axios from 'axios'

const $API = axios.create({
    baseURL: 'http://111.230.246.226:8088',
    timeout: 8000
})

// 请求拦截
$API.interceptors.request.use((config) => {
    // 把token携带在headers
    const autoToken = localStorage.getItem('autoToken')
    if (autoToken) {
        config.headers.token = autoToken
    }
    return config;
}, (error) => {
    // 抛出错误
    return Promise.reject(error)
})

// 响应拦截
$API.interceptors.response.use((res) => {
    // 最终返回的数据,可以在这里对数据做处理
    return res.data;
}, (error) => {
    // 抛出错误
    return Promise.reject(error)
})

export default $API


api

import $API from "../utils/request";

export const getList = (data) => {
    return $API({
        url: '/getList',
        method: 'get',
        params: data
    })
}


使用

<template>
  <div id="app"></div>
</template>
<script>
import { getList } from "./api";
export default {
  async mounted() {
    const res = await getList({
      nowPage: 1
    });
    console.log(res);
  }
};
</script>