41 lines
1.2 KiB
JavaScript
41 lines
1.2 KiB
JavaScript
|
|
// Lightweight wrapper around uni.request to mimic ApiResponse<T>
|
||
|
|
import { ENV } from './env.js';
|
||
|
|
|
||
|
|
export async function httpGet(url, params = {}, extra = {}) {
|
||
|
|
const fullUrl = ENV.API_URL + url;
|
||
|
|
return new Promise((resolve, reject) => {
|
||
|
|
uni.request({
|
||
|
|
url: fullUrl,
|
||
|
|
method: 'GET',
|
||
|
|
data: params,
|
||
|
|
header: { 'Content-Type': 'application/json' },
|
||
|
|
timeout: extra.timeout || 5000,
|
||
|
|
success: (res) => {
|
||
|
|
resolve({ code: res.statusCode, data: res.data, message: res.errMsg });
|
||
|
|
},
|
||
|
|
fail: (err) => {
|
||
|
|
reject({ code: 500, data: null, message: err.errMsg || 'network error' });
|
||
|
|
},
|
||
|
|
});
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
export async function httpPost(url, data = {}, extra = {}) {
|
||
|
|
const fullUrl = ENV.API_URL + url;
|
||
|
|
return new Promise((resolve, reject) => {
|
||
|
|
uni.request({
|
||
|
|
url: fullUrl,
|
||
|
|
method: 'POST',
|
||
|
|
data,
|
||
|
|
header: { 'Content-Type': 'application/json' },
|
||
|
|
timeout: extra.timeout || 5000,
|
||
|
|
success: (res) => {
|
||
|
|
resolve({ code: res.statusCode, data: res.data, message: res.errMsg });
|
||
|
|
},
|
||
|
|
fail: (err) => {
|
||
|
|
reject({ code: 500, data: null, message: err.errMsg || 'network error' });
|
||
|
|
},
|
||
|
|
});
|
||
|
|
});
|
||
|
|
}
|