Мы решили разделить наш проект grails на три ...
- model-domain-project (Это раздел «admin» со всеми представлениями / контроллерами и всеми службами,домен)
- веб-приложение (это основное приложение, контроллеры, представления)
- api-rest-app (это остальные контроллеры)
model-domain-project - это подключаемый модуль, который подключается к веб-приложению и API-приложению, содержит модель домена, службы и все средства защиты базы данных, транзакции и т. д.
Веб-приложениевсе HTML-шаблоны, представления и контроллеры, здесь мы используем атрибуты Spring Security
. В приложении api-rest мы используем фильтры grails и используем Basic-Authorization через https с токеном сдата истечения срока действия ...
если дата истечения срока действия токена достигнута, вам нужно будет запросить другой токен с «запросом-токеном», который мы отправили вам с первым токеном ... (более или менеекак oauth2)
Чтобы получитьдва первых токена, вам нужно будет подтвердить устройство через логин с именем пользователя / телефона / пароля, затем вы получите ключ через смс, который вам нужно будет ввести в приложение
Не знаете, если это лучший способ, но это то, как мы это делаем ...
Иногда мы используем веб-приложение в качестве клиента и вызываем приложение api-rest-app ...