Fix 401 Error After Reconnect on Android

Job ID: 39020789

Budget: $250 – $750 USD

Title: 401 ошибка после реконекта

Desription: Отображается экран с пустыми полями и 401 ошибкой, после входе и выхода из комнаты

Шаги воспроизведения:
1. Подключится через VPN к любой стране (срабатывает на Украинском мобильном интернете)
2. Войти в комнату, и выйти из нее
3. Войти в комнату и выйти повторно




Есть игра на андроид, сделанная в юнити. Есть веб-платформа, где пользователи могут зарегистрироваться, создать кабинет, в котором можно пополнять баланс. Игра, при запуске, просит пользователя залогинится, используя логин/пароль для веб-платформы. Есть скрипт, уже имплементированный в игру, который отвечает за коммуникацию между игрой и платформой, а именно - логин игрока и получение нового баланса игрока по результатам игры.
Но возникла проблема, которую мы не предусмотрели и нужно исправить - при изменении региона пользователя (например, через VPN) возникает ошибка авторизации в приложении. Это происходит из-за того, что токен авторизации, выданный на основе текущего региона (сети), становится недействительным при смене региона. В результате сервер отклоняет запросы с ошибкой HTTP 401 Unauthorized, и приложение не может повторно авторизовать пользователя без перезапуска. Проблема заключается в том, что приложение не умеет автоматически повторно авторизовываться в случае, если токен устарел или стал недействительным. Чтобы решить это, нужно добавить механизм, который будет автоматически получать новый токен, когда текущий больше не подходит.
Related categories: C# Programming Web Services Unity