我目前正在开发一个新的 MVC4 应用程序,它将是一个具有大量客户端交互的丰富应用程序。
以前对于 MVC 应用程序,我会使用控制器来简化 javascript 服务器端交互。现在随着 web api 和 rest 服务的出现,我质疑这种方法。
我会对其他开发人员的意见感兴趣,因为它是客户端/服务器端交互的更好实践,使用 web api 而不是控制器动作来进行这种交互会更好吗?
我目前正在开发一个新的 MVC4 应用程序,它将是一个具有大量客户端交互的丰富应用程序。
以前对于 MVC 应用程序,我会使用控制器来简化 javascript 服务器端交互。现在随着 web api 和 rest 服务的出现,我质疑这种方法。
我会对其他开发人员的意见感兴趣,因为它是客户端/服务器端交互的更好实践,使用 web api 而不是控制器动作来进行这种交互会更好吗?
我会选择 Web API。您说客户端交互在您的项目中占有重要地位,因此应该有自己的项目。
主要原因是关注点分离,因为它更干净地将返回 Html 的控制器与客户端使用的 API 分离。使用专门用于此特定主题的 Web API 项目将产生更清晰的代码。
例如,在 MVC 控制器中,为了返回一个对象,您将编写以下代码:
return Json(customInstance);
ActionResult 类型。为了在 WebAPI 中实现同样的事情,将使用这行代码:return customInstance;
CustomObject 类型。