import axios from 'axios' export default function createFetch(url) { const l2Request = axios.create({ baseURL: url, headers: { 'Content-Type': 'application/json' }, timeout: 10000, // 自定义响应数据转换,处理大整数ID精度问题 transformResponse: [data => { // 在JSON解析前将所有id数值转换为字符串,避免大整数精度丢失 const modifiedData = data.replace(/"id":\s*(\d+)/g, '"id": "$1"'); return JSON.parse(modifiedData); }] }) l2Request.interceptors.response.use(response => { return response.data }) return { getReportSummary: (params) => { return l2Request({ method: 'get', url: '/api/report/summary', params }) }, getReportDetail: (params) => { return l2Request({ method: 'get', url: '/api/report/details', params }) } } }