Files
ks-app-employment-service/packageRc/components/verifition/utils/axios.js
wuzhimiao e84b367360 提交
2025-10-31 09:30:04 +08:00

69 lines
1.6 KiB
JavaScript

// 导入项目配置 - 使用相对路径替代@符号
import config from '../../../../config.js'
// 使用uni-app内置的网络请求API替代axios
const service = {
// 基础配置
baseURL: config.baseUrl,
timeout: 40000,
// request方法封装
request(options = {}) {
// 合并默认配置和传入配置
const requestOptions = {
url: options.url,
method: options.method || 'GET',
header: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/json; charset=UTF-8',
...options.header
},
data: options.data,
timeout: options.timeout || this.timeout
}
// 处理baseURL
if (requestOptions.url && !requestOptions.url.startsWith('http')) {
requestOptions.url = this.baseURL + requestOptions.url
}
// 返回Promise
return new Promise((resolve, reject) => {
uni.request({
...requestOptions,
success: (res) => {
// 模拟axios的响应拦截器
const responseData = res.data || {};
resolve(responseData);
},
fail: (error) => {
console.error('Request failed:', error);
reject(error);
}
})
})
},
// GET快捷方法
get(url, params = {}, options = {}) {
return this.request({
...options,
url,
method: 'GET',
data: params
})
},
// POST快捷方法
post(url, data = {}, options = {}) {
return this.request({
...options,
url,
method: 'POST',
data
})
}
}
export default service