/// 统一 API 异常(对齐 uniApp request.js 的错误语义) class ApiException implements Exception { final int code; final String message; ApiException(this.code, this.message); @override String toString() => 'ApiException($code, $message)'; } /// 从任意抛出对象中提取 ApiException(供 UI/Provider 捕获使用) ApiException asApiException(Object error) { if (error is ApiException) return error; return ApiException(-1, error.toString()); }