Типы ошибок

303 SEE_OTHER - запрос необходимо повторить, но направить в другой центр обработки данных.

400 BAD_REQUEST - запрос содержит ошибки. В случае, если запрос был создан с помощью формы и содержит данные, сгенерированные пользователем, пользователь должен быть уведомлен о том, что данные необходимо исправить перед повторением запроса.

401 UNAUTHORIZED - была предпринята несанкционированная попытка использования функционала, доступного только авторизованным пользователям.

403 FORBIDDEN - нарушение конфиденциальности. Например, попытка написать сообщение тому, кто занес текущего пользователя в черный список.

404 NOT_FOUND - попытка вызвать несуществующий объект, например метод.

406 NOT_ACCEPTABLE - аналогично 400 BAD_REQUEST, но приложение должно отображать ошибку пользователю немного иначе. Не отображайте пользователю никаких видимых ошибок при получении конструктора rpc_error: вместо этого дождитесь обновления updateServiceNotification и обработайте его как обычно. По сути, всплывающее обновление updateServiceNotification будет отправлено независимо (т.е. НЕ как конструктор Updates внутри rpc_result, а как обычное обновление) сразу после отправки 406 rpc_error: обновление будет содержать фактическое локализованное сообщение об ошибке, которое будет показано пользователю во всплывающем окне пользовательского интерфейса.

Исключением является ошибка AUTH_KEY_DUPLICATED, которая отправляется только в том случае, если какой-либо из немедиа DC обнаруживает, что авторизованный сеанс отправляет запросы параллельно из двух отдельных TCP-подключений с одного и того же или разных IP-адресов. Обратите внимание, что параллельные подключения по-прежнему разрешены и фактически рекомендуются для медиа-DC. Также обратите внимание, что под сеансом мы подразумеваем сеанс с авторизацией, идентифицированный конструктором авторизации, извлекаемый с помощью account.getAuthorizations, а не сеанс MTProto.

Если клиент получает ошибку AUTH_KEY_DUPLICATED, сеанс уже был аннулирован сервером, и пользователь должен сгенерировать новый ключ авторизации и войти снова.

420 FLOOD - это сообщение об ошибке, генерируемое серверами Telegram, когда он обнаруживает, что приложение отправляет слишком много запросов в течение короткого периода времени. Telegram имеет ограничение на количество запросов, которые можно отправить в течение определенного периода времени, и если этот лимит будет превышен, серверы ответят этим сообщением об ошибке. Более подробно можете узнать об ограничениях в официальном боте Telegram @SpamBot

500 INTERNAL - во время обработки запроса произошла внутренняя ошибка сервера; например, произошел сбой при доступе к базе данных или файловому хранилищу.

Если клиент получает ошибку 500 или вы считаете, что эта ошибка не должна была возникнуть, соберите как можно больше информации о запросе и ошибке и отправьте ее разработчикам.

Другие коды ошибок - если сервер возвращает ошибку с кодом, отличным от перечисленных выше, это может считаться ошибкой 500 и рассматриваться как внутренняя ошибка сервера.

Last updated