import { API } from '@js-lion/api'; import type { AxiosRequestConfig, AxiosResponse } from 'axios'; import { API_BASE, API_Server } from '@/config'; import Authorization from './authorization'; import { asyncCheck } from './response'; // 处理请求前的数据 const requestCallback = function (req: AxiosRequestConfig): AxiosRequestConfig { const auth = Authorization(); if (auth) { req.headers = { ...req.headers, ...auth }; } return req; }; // 处理返回数据 const responseCallback: any = function (res: AxiosResponse) { const status = parseInt(res.status as any, 10); if (status >= 200 && status < 300) { return asyncCheck(res); } return Promise.reject(res); }; API.addRequest(requestCallback); API.addResponse(responseCallback, function (error: any) { if (error && error.response) { return Promise.reject(error.response.data); } return Promise.reject(error); }); // 设置全局变量 API.setEnv(API_Server); API.setConfig({ baseURL: API_BASE, // withCredentials: true, });