Azimut Framework
  • О платформе Azimut
  • Концепция
    • Суть разработки на Azimut
    • Компиляция метаданных
    • Наследование метаданных
    • Подсистемы
    • Проекты и релизы
    • Расширяемость
  • Начало работы
    • Системные требования
    • Установка
  • Документация
    • Основные объекты
      • Сущность
      • Контекст
        • Контекст в выборках
        • Контекст в представлениях
      • Представление
      • Выборка
        • Фильтры и параметры отбора
      • Web формы
    • Биндинги параметров Sql скрипта
      • Биндинг Идентификатор документа
      • Биндинг Поле представления
      • Биндинг Строка
    • Автозадачи по расписанию
      • Sql to WebRequest
      • Обработка отчетов
      • Пакетное сканирование документов
    • Шаблон ХП
    • Главное меню
    • Вопросы-ответы
      • Как удалить пункт меню
      • Как удалить объект конфигурации
      • Как в выборку добавить параметр отбора
      • Как редактировать выборку прямо в гриде
    • Видео
    • Устранение неисправностей
  • API
    • Возврат ошибок
  • Расширение Платформы
    • Разработка дополнений
      • Расширение API
      • Подключение любой dll
Powered by GitBook
On this page

Was this helpful?

  1. API

Возврат ошибок

  1. Все ошибки от API возвращаются всегда в Json формате.

  2. Если веб метод не найден, вернется 404 NotFound

{
    "ErrorMessage": "/testerror1 не найден",
    "HttpStatusCode": 404,
    "HttpStatusMessage": "NotFound"
}
  1. Если произошла непредвиденная ошибка при обработке SQL, вернется 500 InternalServerError

{
    "ErrorMessage": "Could not find stored procedure 'xxx'.",
    "HttpStatusCode": 500,
    "HttpStatusMessage": "InternalServerError"
}

При этом ErrorMessage будет заполнено только если API запущено в режиме Development. В остальных режимах клиент не узнает подробности ошибки. Искать ее следует в логах.

  1. Если произошла не SQL ошибка, вернется 400 BadRequest

{
    "ErrorMessage": "........",
    "HttpStatusCode": 400,
    "HttpStatusMessage": "BadRequest"
}

При этом ErrorMessage будет заполнено только если API запущено в режиме Development. В остальных режимах клиент не узнает подробности ошибки. Искать ее следует в логах.

  1. Если метод необходимо запускать с авторизацией, но этого сделано не было, вернется 401 Unauthorized

{
    "ErrorCode": 11,
    "ErrorMessage": "Сессия истекла. Перезапустите приложение.",
    "HttpStatusCode": 401,
    "HttpStatusMessage": "Unauthorized"
}
  1. Если произошла управляемая ошибка, через вызов SY_RaiseError, вернется 400 BadRequest

{
    "ErrorCode": 10,
    "ErrorMessage": "Ошибка",
    "HttpStatusCode": 400,
    "HttpStatusMessage": "BadRequest"
}

ErrorCode - код ошибки, переданный в SY_RaiseError

ErrorMessage - сообщение, переданное в SY_RaiseError

Код ошибки должен быть зарегистрирован в таблице SY_ErrorTypes. Для общей ошибки используйте код 10, уточняя детали в сообщении.

Пример вызова

exec SY_RaiseError 10, 'Ошибка'

PreviousУстранение неисправностейNextРазработка дополнений

Last updated 5 months ago

Was this helpful?