import { URL, appid } from './url' const request = (option) => { return new Promise((resolve, reject) => { // Debug request info console.log(`发起请求: ${option.method} ${URL + option.url}`, option.data) uni.request({ url: URL + option.url, method: option.method, data: option.data, header: { "Content-Type": "application/x-www-form-urlencoded", ...option.headers, 'appid': appid, 'Authorization': "Bearer " + uni.getStorageSync('token'), 'Clientid': uni.getStorageSync('client_id') }, success(res) { // 记录响应 console.log(`请求响应: ${option.url}`, res) // 检查响应状态码 if (res.statusCode !== 200) { console.error(`HTTP状态码错误: ${res.statusCode}`, res.data) // 为了适应某些服务器的异常响应,我们仍然返回数据 if (res.data) { resolve(res.data) return } reject({msg: `请求失败,状态码:${res.statusCode}`}) return } // 检查业务状态码 if (res.data && res.data.code !== 200) { console.warn(`业务状态码错误: ${res.data.code}`, res.data) // 仍然返回数据,由业务逻辑处理 resolve(res.data) return } resolve(res.data) }, fail(err) { // 网络请求本身失败 console.error(`请求失败: ${option.url}`, err) reject(err) } }) }) } export default request