import axios from 'axios' export default function createFetch(url) { const l2Request = axios.create({ baseURL: 'http://' + 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 { adjustPosition: (data) => l2Request({ method: 'put', url: '/api/track/position', data }), operateMat: (data) => l2Request({ method: 'put', url: '/api/track/manual/operate/mat', data }), getBackData: (params) => l2Request({ method: 'get', url: '/api/track/return/info', params }), getTrackMatPosition: () => l2Request({ method: 'get', url: '/api/track/coil/position', }) } }