修改当http状态码为200,业务code为错误码中断promise的问题

This commit is contained in:
Arno,陆坡
2025-10-16 09:51:34 +08:00
parent e77780c4c9
commit 10fa9b68d3

View File

@@ -96,9 +96,20 @@ export function http<T>(options: CustomRequestOptions) {
if (res.statusCode >= 200 && res.statusCode < 300) {
// 处理业务逻辑错误
if (code !== ResultEnum.Success0 && code !== ResultEnum.Success200) {
throw new Error(`请求错误[${code}]${responseData.message || responseData.msg}`)
uni.showToast({
icon: 'none',
title: responseData.msg || responseData.message || '请求错误',
})
//这里不直接抛出错误会中断promise链条无法进入finally在下方return resolve(responseData as T)继续执行在接口调用可通过判断code来处理业务逻辑
//async getSampleEnums() {
// const res = await getSampleEnumsApi();
// if (res.code === ResultEnum.Success200) {
// // 处理成功
// }
//},
//throw new Error(`请求错误[${code}]${responseData.message || responseData.msg}`)
}
return resolve(responseData.data as T)
return resolve(responseData as T)
}
// 处理其他错误