VkFast
  • Вступление
    • Главная
    • Установка
  • Работа с API
    • Инициализация
    • Вызов методов API
    • Клавиатура
    • Загрузка медиа-файлов
    • Метод execute
    • Методы-утилиты
  • Работа с BOT
    • Инициализация
    • Обработка событий
    • Хелперы
    • Метод continueProcessing()
    • Правила (Rule)
    • Команды
    • Безопасность
  • Сущности
    • Информация
    • User
    • Forward
  • Прочее
    • Первый бот
    • Обработка ошибок
    • Разделение кода
  • Ссылки
    • Docs VK API
    • Docs Callback API
    • Github repository
Powered by GitBook
On this page
  • Способ 1
  • Способ 2
  1. Прочее

Обработка ошибок

Куда же без них...

Есть два способа обработки ошибок API.

Способ 1

Использование конструкции try catch

$api = new VkApi('access_token', 5.131, ignore_error: false); // выключаем игнор. ошибок, дабы при их наличии выбрасывалось исключение

try {
    $api->messages->send() // будет получена ошибка из-за недостаточного кол-ва аргументов
} catch (VkApiError $error) {
    $error_code = $error->getCode();
    $error_msg = $error->getMessage();
}

Рекомендуется использовать этот способ. Так вы точно не пропустите ни одну ошибку.

Учитывайте, что все методы-утилиты, которые являются лишь обреткой над API-методами - также будут выбрасывать исключения.

Способ 2

Ошибки API не будут выбрасывать исключения, но в объекте ответа будут присутстсовать поле error.

$api = new VkApi('access_token', 5.131, ignore_error: true); // по умолчанию и так true

$request = $api->messages->send() // будет получена ошибка из-за недостаточного кол-ва аргументов
if (isset($request->error)) {
    $error_code = $request->error->error_code;
    $error_msg = $request->error->error_msg;
}

Last updated 1 year ago