Files
MCAdroidApp/TROUBLESHOOTING.md
Viktoria Polyakova 0a9c3f5bc4 Init
2026-01-25 15:57:18 +03:00

5.5 KiB
Raw Permalink Blame History

Руководство по устранению ошибок авторизации

Ошибка: "Сервер вернул пустой или некорректный ответ"

Эта ошибка может возникать по нескольким причинам. Ниже приведены возможные причины и способы их устранения.

Возможные причины

  1. Неправильный URL сервера

    • URL должен начинаться с http:// или https://
    • Проверьте, что URL введен полностью и правильно
    • Пример правильного URL: https://crm.example.com
  2. Проблемы с подключением к серверу

    • Проверьте интернет-соединение
    • Убедитесь, что сервер доступен
    • Проверьте, не блокирует ли брандмауэр соединение
  3. Неверные учетные данные

    • Проверьте правильность email и пароля
    • Убедитесь, что учетная запись активна
  4. Неправильный API ключ

    • Проверьте, что API ключ введен правильно
    • Убедитесь, что API ключ активен и имеет необходимые права
  5. Проблемы на стороне сервера

    • Сервер может быть временно недоступен
    • Возможны проблемы с базой данных
    • Сервер может возвращать пустой ответ из-за внутренних ошибок

Пошаговая диагностика

  1. Проверьте вводимые данные

    • Убедитесь, что все поля заполнены
    • Проверьте формат email
    • Убедитесь, что URL начинается с http:// или https://
  2. Проверьте подключение

    • Попробуйте открыть URL сервера в браузере
    • Проверьте, доступен ли сервер из вашей сети
  3. Проверьте логи приложения

    • Включите отладочные логи в Android Studio
    • Ищите сообщения с тегом AuthRepository
    • Обратите внимание на коды HTTP ответов
  4. Проверьте API ключ

    • Убедитесь, что API ключ действителен
    • Проверьте, имеет ли ключ необходимые права доступа

Коды HTTP ошибок и их значения

  • 400 - Некорректный запрос. Проверьте введенные данные и формат email.
  • 401 - Неверный email или пароль. Проверьте правильность введенных данных.
  • 403 - Доступ запрещен. Проверьте API ключ и права доступа.
  • 404 - Сервер не найден. Проверьте URL сервера и подключение к сети.
  • 405 - Метод не разрешен. Эндпоинт не существует или недоступен.
  • 422 - Некорректные данные. Проверьте формат email и пароля.
  • 500 - Ошибка сервера. Сервер временно недоступен, попробуйте позже.
  • 502, 503, 504 - Проблемы с сервером. Проверьте подключение к серверу.

Сетевые ошибки

  • UnknownHostException - Нет подключения к серверу. Проверьте интернет-соединение и правильность URL.
  • SocketTimeoutException - Таймаут соединения. Проверьте подключение к серверу и попробуйте снова.
  • IOException - Ошибка сети. Проверьте подключение к интернету.

Если проблема не решена

  1. Перезапустите приложение
  2. Проверьте версию приложения - убедитесь, что используется последняя версия
  3. Обратитесь в поддержку - предоставьте:
    • Текст ошибки
    • Логи приложения (с тегом AuthRepository)
    • Используемый URL сервера
    • Версию приложения

Примеры правильного ввода данных

URL сервера: https://crm.example.com
Email: user@example.com
Пароль: your_password
API Key: your_api_key_here

Техническая информация для разработчиков

Приложение использует следующие эндпоинты для авторизации:

  • POST /api/iam/auth/login-site - для авторизации через сайт
  • POST /api/iam/auth/login-ext - для авторизации через расширение

Все запросы выполняются с использованием Retrofit и OkHttp с таймаутом 30 секунд.

Для диагностики проблем рекомендуется включить уровень логирования BODY в OkHttpInterceptor.