Я создал REST API для моего приложения. Я обеспечил это с жетонами на предъявителя JWT. Я сделал сайт и приложение для Android для этого приложения
Сайт сделан с использованием ReactJS. Я использовал этот шаблон для обработки пользователей и запросов:
- использовать редукторы и действия для обновления состояния
- использовать промежуточное программное обеспечение перед каждым запросом для проверки возраста токена и обновлять при необходимости
- использовать компоненты высокого порядка, чтобы проверить, имеет ли пользователь право на определенный маршрут
связанные предметы размещены в одном месте.
Теперь в приложение для Android ..
- Мои запросы выполняются через
okhttp
в методе внутри класса активности, который его использует. Это довольно глючно, потому что иногда мне нужно использовать этот же метод вне этой деятельности. Я попытался создать класс Request, но потом не смог его использовать, а статический не позволил бы мне использовать runOnUiThread
- пользователь сохраняется в
sharedpreferences
. НО мне не нужен доступ к общим настройкам каждый раз, когда мне нужно, чтобы пользователь был оптимальным. Я сделал пользователь статического поля в основной деятельности. и все другие виды деятельности, которые в нем нуждаются, могут без проблем получить к нему доступ все еще глючит
нет лучшего способа справиться со всем этим? мой код на данный момент работает, но это в значительной степени спагетти. Кроме того, есть некоторые функции, которые я хотел бы реализовать перед каждым запросом, такие как проверка токена и его обновление при необходимости или выход из системы пользователя, если срок действия токена истек. Я оглянулся, но не увидел ни одной темы, рассказывающей об архитектуре Android REST API
tl; dr: моя архитектура Android для обработки пользователей и запросов теперь работает. но это очень глючит. Как я могу улучшить это? Есть ли уже созданные архитектуры, которые я могу реализовать?