LOADING

MiniKano的小窝


 

typescript中配置axios

import axios, { Method } from "axios";

// 基础配置
const requestApi = axios.create({
    baseURL: '',
    timeout: 10000
})

// 拦截器配置

requestApi.interceptors.request.use((config) => {
    return config
})

//响应拦截器
requestApi.interceptors.response.use((response) => {
    return response.data
}, err => {
    return Promise.reject(err)
})

type ReturnType<T> = {
    code: number;
    data: T;
    msg: string;
}

const request = <T>(url: string, method: Method = 'get', data: object) => {
    return requestApi.request<any, ReturnType<T>, any>({
        url,
        method,
        [method.toUpperCase() === "GET" ? "params" : 'data']: data
    })
}

export default request
点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注