// import axiosConfig from "./axios_config"; // import axios from 'axios'; // const service = axios.create(axiosConfig); // // 请求拦截 // service.interceptors.request.use( // config => { // // (config.headers as any).Authorization = 'Bearer' + ' ' + store.getState().chatgpt.token; // // if (config.data) { // // config.data = JSON.stringify(config.data); // // }; // // if (config.method?.toLocaleLowerCase() === 'get') { // // config.paramsSerializer = function (params) { // // return qs.stringify(params, { arrayFormat: 'repeat' }) // // } // // }; // return config; // }, // ( error: any) => { // return Promise.reject(error); // } // ); // // 响应拦截 // service.interceptors.response.use( // (res: any) => { // // let data = JSON.parse(res.data); // let data = res.data; // console.log(data) // return data; // }, // ( error: { response: { data: string; }; }) => { // let data = JSON.parse(error.response.data); // // if (data.code === 500) { // // console.log(error) // // }; // return data // } // ) // export default service; import { getAxiosConfig } from "./axios_config"; import axios from "axios"; // 动态生成 axios 实例,每次都能拿到最新 IP export async function getService() { const axiosConfig = await getAxiosConfig(); const service = axios.create(axiosConfig); // 请求拦截 service.interceptors.request.use( config => { // (config.headers as any).Authorization = 'Bearer' + ' ' + store.getState().chatgpt.token; // if (config.data) { // config.data = JSON.stringify(config.data); // }; // if (config.method?.toLocaleLowerCase() === 'get') { // config.paramsSerializer = function (params) { // return qs.stringify(params, { arrayFormat: 'repeat' }) // } // }; return config; }, (error: any) => Promise.reject(error) ); // 响应拦截 service.interceptors.response.use( (res: any) => { let data = res.data; console.log(data); return data; }, (error: { response: { data: string } }) => { let data = {}; try { data = JSON.parse(error.response.data); } catch (e) { data = error.response?.data || {}; } return data; } ); return service; }