// src/utils/request.js import config from '@/config' const baseUrl = config.baseUrl const http = { get(url, params = {}, options = {}) { return this.request('GET', url, params, options) }, post(url, data = {}, options = {}) { return this.request('POST', url, data, options) }, request(method, url, data = {}, options = {}) { return new Promise((resolve, reject) => { // 确保URL以斜杠开头 let finalUrl = url.startsWith('/') ? url : `/${url}`; // 特殊处理Java API请求 if (url.startsWith('/java-api')) { finalUrl = url; } // 其他API添加前缀 else if (!url.startsWith('http')) { finalUrl = '/api' + finalUrl; } const header = { 'Content-Type': 'application/json', ...(options.headers || {}) } // 添加认证token const token = uni.getStorageSync('token') if (token) { header['Authorization'] = `Bearer ${token}` } uni.request({ url: baseUrl + finalUrl, method, data, header, success: (res) => { // 统一处理成功响应 if (res.statusCode >= 200 && res.statusCode < 300) { resolve(res.data) } else { // 尝试提取错误消息 const errorMsg = res.data?.msg || res.data?.message || '请求失败'; reject(new Error(errorMsg)) } }, fail: (err) => { reject(err) } }) }) } } // 确保正确导出 export default http