错误码 收藏我的收藏
收藏我的收藏
在使用小程序组件/API 时,抛出的异常或异常回调对象中,已有 errMsg(错误信息),errorCode(错误码)和 errorType(错误分类) 会逐步覆盖到所有的组件/API。
- •异常对象说明如下:
| 属性名 | 类型 | 说明 | 
| errMsg | string | 错误说明 | 
| errorCode | number | 错误码,会逐步覆盖到所有组件/API,具体可参考对应组件/API 的对外文档 | 
| errorType | string | 错误分类,取值 D | U | F | I,取值说明参考errorType,会逐步覆盖到所有组件/API,具体可参考对应组件/API 的对外文档 | 
代码示例
tt.showShareMenu({ menus: ["record", "share"], success(res) { tt.showToast({ title: '展示成功', }); console.log(res.errMsg); }, fail(res) { const { errMsg, errorCode, errorType } = res; tt.showToast({ title: errMsg, icon: 'fail' }); console.log(errMsg, errorCode, errorType); } });
背景介绍
errorCode 和 errorType 错误码规范的出现是为了解决以下问题:
- •现有的错误码 errNo 无法与组件/API 对应上,不同组件/API 可能会出现相同的错误码 errNo;
- •目前的错误码规范不利于错误消费,难以区分开发者需要关注的错误和小程序框架的错误。
因此,我们设计了一套拥有统一规范的 errorCode 和 errorType,以帮助开发者更好地开发调试及处理错误。
errorCode 和 errorType 错误码规范有如下优点:
- •一个错误码能对应上一个组件/API,便于错误消费;
- •通过 errorType,可以有针对性的消费需要关注的错误。
错误码设计
errorCode
errorCode 采用 AAAABB 6 位错误码规范,其中 1~4 位代表组件/API 编号,5~6 位代表具体错误类型,取值范围如下:
| AAAA | BB | 
| 1000~9999 | 00~99。其中取值 79~99 对应通用错误码,详情见通用错误码 | 
errorType
errorType 代表错误分类,取值如下:
| 错误分类 | 说明 | 
| D | Developer。对应开发者侧的异常,比如参数不符合预期等 | 
| U | User。对应用户侧的异常,比如有部分能力使用需要用户授权,用户拒绝授权等 | 
| F | Framework。对应小程序框架内部的异常,有需要请拉客服咨询 | 
| I | Information。对应一些可以忽略的错误 | 
通用错误码
通用错误码指的是不同的组件/API 所共有的错误,错误码最后两位取值在下表中,对应的是通用错误码。通用错误码的取值和说明如下:
| BB(具体错误类型) | errorType | 说明 | 
| 79 | D | 隐私 API 不在隐私协议能力白名单中,具体可参考:配置隐私协议 | 
| 80 | U | 用户拒绝隐私协议授权 | 
| 81 | D | 能力已下线 | 
| 82 | D | 小程序未通过试运营期,无法调用进阶能力,具体可参考:小程序试运营期管理规范 | 
| 83 | D | 白名单异常。该小程序没有调用此 API 的白名单,有需要请拉客服咨询 | 
| 84 | F | 小程序框架内部未实现,有需要请拉客服咨询 | 
| 85 | U | 无网络 | 
| 86 | D | 调用太过频繁,建议控制能力调用频率 | 
| 87 | D |  宿主不支持,例如抖音的能力在其他 APP 不可用 | 
| 88 | D | 系统不支持,例如只有 Android 支持的功能在 iOS 不可用 | 
| 89 | U | 用户未授予系统权限,例如 GPS 定位未打开 | 
| 90 | U | |
| 91 | F | 小程序框架内部错误,有需要请拉客服咨询 | 
| 92 | F | 小程序框架运行环境异常,有需要请拉客服咨询 | 
| 93 | F | 小程序框架兜底异常,有需要请拉客服咨询 | 
| 94 | U | 部分 API 在后台时无法调用 | 
| 95 | U | 用户取消操作 | 
| 96 | U | 用户未登录 | 
| 97 | U | 用户取消登录 | 
| 98 | D | 获取平台登录 session 失败 | 
| 99 | D | 参数错误 | 
