---
title: 오류 처리
canonical: https://developer.unico.io/ko/dual-api/developers/sdks-and-tools/web/web-sdk/error-handling
locale: ko
generated_by: markdown-export
---

Web SDK의 모든 오류 처리는 이 섹션에 집중되어 있습니다. `error` 콜백은 `getCode()` 및 `getDescription()`을 노출하는 `ErrorBio` 객체를 수신합니다.

## 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` | 카메라 초기화가 차단되었습니다 — `prepareCamera` 중 SDK가 iFrame에서 열렸습니다 |
| `73407` | SDK가 완전히 로드되지 않았습니다 |
| `73500` | 세션을 가져올 수 없습니다 |
| `73501` | 세션을 가져올 수 없습니다 |
| `73502` | 세션 토큰을 찾을 수 없습니다 |
| `73600` | 카메라 리소스를 찾을 수 없습니다 |
| `73601` | 프로덕션 모드에서 카메라를 시작할 수 없습니다 |
| `74000` | 잘못된 16진수 |
| `74001` | 객체가 `UnicoTheme`이 아닙니다 |

## openCamera 오류

| 코드 | 설명 |
|---|---|
| `73700` | 카메라 응답을 파싱할 수 없습니다 |
| `73704` | 사용자가 취소 버튼을 눌러 세션을 완료하지 않았습니다 |
| `73706` | 카메라 접근이 거부되었습니다 — 사용자가 명시적으로 권한을 거부하거나 디바이스 정책이 차단합니다 |
| `73707` | 앱 종료, 절전, OS 알림 또는 백그라운드 전환으로 인해 세션이 취소되었습니다 |
| `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가 예외를 발생시키고, 처리되지 않으면 사용자의 콘솔에 표시됩니다.
:::