enВойти в Senler

Ошибки SDK

Используйте обработку ошибок рядом с вызовами клиента SDK.

Ошибки

SDK экспортирует три основных класса ошибок:

  • ResponseError — API вернул неуспешный HTTP-статус; исходный Response доступен в error.response;
  • FetchError — запрос не дошёл до ответа, например из-за сетевой ошибки;
  • RequiredError — не передан обязательный параметр метода.

Обработайте ошибку

import {
  FetchError,
  RequiredError,
  ResponseError,
} from "@senlerio/api";

try {
  await client.projects.getMe();
} catch (error) {
  if (error instanceof ResponseError) {
    const details = await error.response.clone().json().catch(() => null);
    console.error(error.response.status, details);
  } else if (error instanceof RequiredError) {
    console.error("Не передан параметр:", error.field);
  } else if (error instanceof FetchError) {
    console.error("Сетевая ошибка:", error.cause);
  } else {
    throw error;
  }
}

При 401 проверьте актуальность токена; при 403 — права токена и права пользователя; при ошибке сущности — правильность projectId, ID ресурса и область доступа токена.

Для серверной OAuth-интеграции можно включить автоматическое обновление токенов.