42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
import env from '@/config/env'
|
|
|
|
export const myRequest = async (option = {}) => {
|
|
const envConfig = getApp().globalData.getEnvConfig()
|
|
const baseConfig = env[envConfig]
|
|
|
|
return new Promise((resolve, reject) => {
|
|
uni.request({
|
|
url: baseConfig.baseUrl + option.url,
|
|
data: option.data || {},
|
|
method: option.method || 'GET',
|
|
timeout: 30000,
|
|
header: {
|
|
'content-type': 'application/json',
|
|
...option.header
|
|
},
|
|
success: result => {
|
|
console.log({
|
|
url: baseConfig.baseUrl + option.url,
|
|
request: option.data,
|
|
response: result.data,
|
|
statusCode: result.statusCode,
|
|
method: option.method,
|
|
header: option.header
|
|
})
|
|
|
|
if (result.statusCode === 200) {
|
|
resolve(result)
|
|
} else {
|
|
reject(new Error(`HTTP ${result.statusCode}: ${result.errMsg || 'Request failed'}`))
|
|
}
|
|
},
|
|
fail: error => {
|
|
console.log('=== 请求失败 ===')
|
|
console.log('Error:', error)
|
|
console.log('================')
|
|
reject(new Error(error.errMsg || 'Network request failed'))
|
|
}
|
|
})
|
|
})
|
|
}
|