Guide

에러 처리

headless 클라이언트가 던지는 IssueStickerHeadlessError의 코드와 처리 방법을 설명합니다.

클라이언트가 던지는 모든 오류는 IssueStickerHeadlessError이고, code 속성으로 원인을 구분합니다.

에러 코드

code의미
INVALID_PHASE현재 phase에서 허용되지 않은 동작
NOT_INITIALIZED아직 초기화되지 않음
AUTH_FAILEDAPI key 검증·인증 실패
MEMBER_AUTH_REQUIRED멤버 로그인이 필요하거나 실패
NETWORK_ERROR네트워크 요청 실패
CAPTURE_FAILED화면·요소 캡처 또는 업로드 실패
VALIDATION_ERRORAPI key·제목·설명 등 입력값 검증 실패

에러 확인하기

에러는 두 곳에서 확인할 수 있습니다. 메서드의 try/catch, 그리고 snapshot.error입니다.

import { IssueStickerHeadlessError } from 'issue-sticker/headless';

try {
  await client.submitDraft({ title: form.title, description: form.description });
} catch (error) {
  if (error instanceof IssueStickerHeadlessError && error.code === 'VALIDATION_ERROR') {
    showToast(error.message);
  }
}

client.subscribe((snapshot) => {
  if (snapshot.error) showError(snapshot.error.code, snapshot.error.message);
});
에러 처리 — 이슈스티커 Guide