【发布时间】:2011-12-02 14:15:00
【问题描述】:
我想这更像是一个设计问题,但我目前有一个 REST (Jersey) Web 应用程序,它公开了一个 API,允许用户搜索特定 URL 的信息。
用户需要注册/登录以接收 API 生成的密钥,然后他们将在访问我们的 API 等时使用该密钥。基本上与公开 API 或通过 GETS、POSTS 等访问它有关的任何事情都将在这里举行。
因此,以上内容作为一个网络应用程序。
但是我需要为这个站点设计一个管理组件,本质上是为管理员提供添加新用户的功能,限制用户可以发送到我们 API 的请求数量,如果用户超过分配的请求则限制用户等等。现在我考虑到这个组件,我是否应该只使用标准 MVC 框架(例如 Spring MVC)开发一个单独的 Admin web 应用程序并将其与 REST API webapp 分开处理?
在我看来,将 REST 用于网站的管理方面似乎有点不自然,因为在我看来,REST 只是为了将 API 作为服务公开给客户。或者将这个管理方面结合到现有的 REST webapp 中是否正确?
我打算做的如下:
REST API webapp 连接到 nosql 持久存储。客户可以登录以查看用户信息,例如仪表板,以及他们使用过的 API 服务的请求历史记录等
使用 MVC 处理所有管理方面的单独 Web 应用程序进行管理。
请注意,共享一个用于访问用户凭据信息的 Mysql 存储,与实际保存 URL 数据集信息的第二个存储分开。
请指教。
【问题讨论】:
标签: model-view-controller web-applications rest jersey