REST API design + стандартное веб-приложение MVC - PullRequest
1 голос
/ 07 октября 2011

Полагаю, это скорее вопрос дизайна, но в настоящее время у меня есть веб-приложение REST (Джерси), которое предоставляет API, который позволяет пользователям искать информацию по определенным URL-адресам.

Пользователи должны зарегистрироваться / войти, чтобы получить ключ, сгенерированный API, который они затем будут использовать при доступе к нашему API и т. Д. По сути, все, что связано с раскрытием API или доступом к нему через GETS, POSTS и т. Д., Будетудерживается здесь.

Таким образом, вышеприведенное служит одним веб-приложением.

Однако мне нужно разработать компонент Admin для этого сайта, по существу предоставляя администраторам функциональность для добавления новых пользователей, ограничивая количествозапросы, которые пользователи могут отправлять в наш API, регулировать количество пользователей, если они превышают выделенные запросы и т. д. Теперь я думаю об этом компоненте, стоит ли мне просто разработать отдельное веб-приложение Admin со стандартной инфраструктурой MVC (например, Spring MVC) и рассматривать это отдельно отвеб-приложение REST API?

На мой взгляд, кажется немного неестественным использовать REST для административных аспектов веб-сайта, так как REST, на мой взгляд, предназначен исключительно для предоставления API как услуги клиентам.Или правильно объединить этот административный аспект с существующим веб-приложением REST?

Я собираюсь сделать следующее:

  1. Веб-приложение API REST, подключающееся к постоянному nosqlхранить.Клиенты могут войти в систему, чтобы просмотреть там информацию о пользователях, например, как панель мониторинга, и историю запросов для используемых API-сервисов и т. Д.

  2. Отдельное Webapp для администрирования, использующее MVC для обработки всех аспектов администрирования.

Имейте в виду, что у вас обоих есть общий доступ к хранилищу Mysql для доступа к информации о пользователях, отдельно от второго хранилища, которое фактически будет содержать информацию набора данных для URL-адресов.

Пожалуйста, сообщите.

1 Ответ

1 голос
/ 07 октября 2011

Почему бы не Admin как клиентский API?Вы можете легко запустить его через командную строку, и вы быстро запустите сервер Admin.

Любой графический интерфейс, который вы хотите, можно добавить позже, используя API администратора, так что нет никакого кода выброса.

Это мой предпочтительный маршрут администратора.

...