Вопрос по быстрому дизайну: лучше использовать отдельное веб-приложение для API REST или нет.
В настоящее время у меня есть API-интерфейс REST Jersey, который хорошо подходит для связи между компьютерами. Это относительно просто с GETS только. Структура состоит из внешнего интерфейса Jersey REST APi, дао в хранилище БД и пружинной защиты для перехвата URL-адресов и т. Д. Это хорошо работает.
Однако теперь мне нужно создать веб-приложение, чтобы позволить существующим пользователям возможность входить в систему и контролировать использование их API, регистрировать учетную запись пользователя, сбрасывать свои учетные данные и изменять свою подписку и т. Д. (Плюс еще).
Мне интересно, должен ли я объединить эти два файла и использовать один и тот же WAR-файл, так как они оба используют одни и те же внутренние базы данных и т. Д. Однако одна из них имеет состояние, а другая - API REST без сохранения состояния, требующий аутентификацию для каждого запроса. ..
Итак, я выбрал подход к веб-приложению с состоянием как к клиенту для REST API и выполняю следующие действия:
1) Рассматривать REST API как отдельное веб-приложение.
2) Создайте веб-приложение с сохранением состояния как отдельное веб-приложение и используйте Spring MVC или что-нибудь еще для внешнего интерфейса. Постоянное внутреннее хранилище будет одинаковым для обоих. Также будет компонент администратора, управляемый системой безопасности на основе ролей Spring.
Для второго веб-приложения я позволю пользователям совершать примеры вызовов REST API (первая война, просто щелкнув ссылки и используя свои учетные данные).
Этот подход кажется разумным? То есть одна WAR для API REST и отдельная WAR для веб-приложения с отслеживанием состояния.
Буду признателен за любые комментарии от тех, кто имеет больше опыта REST.