我有一个 ASP.NET MVC 4 应用程序,它需要将现有 API 用于不同的服务。很明显,ApiController 的返回数据和常规控制器的返回视图。
我需要某种形式的 RESTful API 来连接外部 API,以实现 Javascript 功能,但我的操作(呈现视图)也需要调用外部 API。简而言之,我的控制器操作和调用 JavaScript 的 API 都需要调用一个通用的外部 API。
我的问题是:我如何构建它,以便我的操作和 JS API 使用通用接口进行调用?
到目前为止我的两个想法:
- 为每个实体创建一个
ApiController
。然后这些 ApiController 调用外部 API。然后,我的 Javascipt 可以调用这些 ApiController,并且在我的操作中,我可以根据需要创建每个 ApiController 的实例并调用它们的方法(GET、POST、PUT 等)。这听起来很骇人吗? - 将所有业务逻辑放入模型对象中,然后调用外部 API。要向 Javascript 公开某些方法,请提供一些 HTTP 端点,并且 Javascript 传递要调用的操作的名称,该操作调用模型方法,然后调用外部 API。
这些听起来比另一个更“正确”吗?还是这只是另一种过度担心并“随心所欲”的情况?这里的目标只是以 Javascript和我的控制器操作可以访问的通用方式调用一些外部 API 。