---
title: 错误处理
canonical: https://developer.unico.io/zh-CN/dual-api/developers/sdks-and-tools/web/web-sdk/error-handling
locale: zh-CN
generated_by: markdown-export
---

Web SDK 的所有错误处理都集中在本节。`error` 回调接收一个 `ErrorBio` 对象，该对象暴露了 `getCode()` 和 `getDescription()` 方法。

## prepareCamera 错误

| 代码 | 描述 |
|---|---|
| `73000` | 正常使用 SDK API 时发生未知的意外错误 |
| `73001` | `<property>` 为必填项 |
| `73002` | `<property>` 必须是 `<class>` 的实例 |
| `73003` | 名为 `<name>` 的 `<class>` 无法注入 |
| `73004` | 类类型必须是函数或类 |
| `73005` | 找不到 `<locale>` 语言环境 |
| `73006` | 找不到文本：`<text>` |
| `73100` | 无法连接到互联网 |
| `73200` | 找不到 Unico SDK JSON 文件 |
| `73201` | 无法加载 Unico SDK JSON 文件 |
| `73202` | Unico SDK JSON 文件无效 |
| `73204` | 无法初始化 SDK — 请在构建时通过 `setEnvironment` 配置环境 |
| `73300` | 无法对此应用程序进行身份验证 |
| `73301` | 无法对此应用程序进行身份验证 |
| `73302` | 未找到身份验证令牌 |
| `73303` | 当前主机未注册 |
| `73400` | 无法初始化摄像头 |
| `73401` | 无法为此摄像头加载 ML 模型 |
| `73402` | 由于用户设备的连接问题，无法验证密钥 |
| `73403` | 此设备/平台/浏览器/版本组合不受 SDK 支持 |
| `73404` | 设备处于横屏方向。SDK 只能在竖屏模式下使用 |
| `73405` | 由于多次尝试失败，设备已被封锁 |
| `73406` | 摄像头初始化被阻止 — SDK 在 `prepareCamera` 阶段在 iFrame 中打开 |
| `73407` | SDK 未完全加载 |
| `73500` | 无法获取会话 |
| `73501` | 无法获取会话 |
| `73502` | 未找到会话令牌 |
| `73600` | 找不到摄像头资源 |
| `73601` | 无法在生产模式下启动摄像头 |
| `74000` | 无效的十六进制值 |
| `74001` | 对象不是 `UnicoTheme` |

## openCamera 错误

| 代码 | 描述 |
|---|---|
| `73700` | 无法解析摄像头响应 |
| `73704` | 用户按下取消按钮，未完成会话 |
| `73706` | 摄像头访问被拒绝 — 用户明确拒绝了权限，或设备策略阻止了访问 |
| `73707` | 会话因应用程序终止、休眠、系统通知或转入后台而取消 |
| `73708` | 会话因设备处于横屏模式而取消 |
| `73710` | 会话因用户未能在规定时间内完成而取消 |
| `73715` | 会话因未配置所有引导图像而取消 |
| `73716` | 会话因 SDK 无法在此设备上启动摄像头而取消 |
| `73717` | 会话因用户处于锁定状态而取消 |
| `73718` | 正常使用 SDK API 时发生未知的意外错误 |
| `73720` | 开发者通过编程方式调用了会话取消 API |
| `73721` | 会话因会话过程中设备方向改变而取消 |
| `73722` | 会话因文档未就绪而取消 |
| `73723` | 会话因存在另一个正在进行的会话而取消 |
| `73724` | 活动会话已取消，因为摄像头会话在 iFrame 内启动 |
| `73728` | 连接错误 — 请使用 HTTPS 进行连接 |
| `73729` | 浏览器不受支持 — 请在其他浏览器中打开 |
| `73730` | 无法初始化活体检测会话 — 未知许可证错误 |
| `73731` | 无法初始化活体检测会话 — 许可证已过期 |
| `73732` | 无法初始化活体检测会话 — 来源不被允许 |
| `73750` | 采集失败，因为用户的眼睛处于闭合状态 |
| `73760` | 采集失败，原因是环境光线问题（过暗、过亮或不均匀） |
| `73761` | 采集失败，原因是用户面部与屏幕之间的距离问题（过近或过远） |
| `73762` | 采集失败，因为眼镜或配饰遮挡了用户面部 |
| `73763` | 采集失败，因为用户面部不稳定或未对齐 |
| `73764` | 采集失败，原因是面部取景问题（面部未居中、出现多张面孔或背景杂乱） |
| `73800` | 无法加密响应 |
| `73900` | 无法获取系统信息 |

:::secondary[官方错误目录]
上述代码反映了 Web SDK 目录。官方的跨平台错误代码目录可在 [API 参考 > 错误代码](/dual-api/developers/api-reference/error-codes) 中找到。
:::

## 处理回调

```javascript
const callback = {
  on: {
    success: (obj) => {
      console.log(obj.base64);
      console.log(obj.encrypted);
    },
    error: (error) => {
      const code = error.getCode();
      const description = error.getDescription();
      // handle error
    }
  }
};
```

:::danger[必填回调]
`callback` 对象是必填项。如果未正确实现（覆盖 `success` 和 `error` 事件），SDK 将抛出异常，如果未处理该异常，则会显示在用户的控制台中。
:::