42

我知道 Express 驻留在服务器上,而 Angular 驻留在客户端上,但据我所知,Angular 可以做 Express 可以做的所有事情

  • 路由
  • 与数据库交互

看起来可能需要 Express 才能让 Node.js 提供 AngularJS 应用程序,但我不确定。

那么将 Express 添加到 AngularJS 应用程序有什么好处呢?

4

4 回答 4

42

有些事情应该在服务器端完成(即 Express,而不是 Angular),最值得注意的是用户输入验证 - Angular,因为它是客户端,可以被篡改。

此外,如果您想提供除 Web 应用程序(即移动应用程序)以外的访问类型,则无论如何您可能都需要一个 API——Express 可以做到这一点,而 Angular 则不能。

最后,数据库访问——通常 Angular 应用程序需要连接到某种后端来执行 CRUD 操作。您要么使用 Firebase 等托管数据库,要么最终使用自己的数据库。后一种情况更受欢迎,您需要 Express(或类似的)。

于 2013-09-09T14:21:24.773 回答
18

Express 和 AngularJS 不会相互排斥,它们有不同的用途——事实上,两者都可以使用——express 用于所有服务器端逻辑,Angular 用于客户端逻辑。

于 2013-09-09T15:04:48.410 回答
14

Express 可用于托管 AngularJS 的服务/工厂使用的 API。您可以将 AngularJS 视为MVC,将 Express 上的 API 视为SOA.

于 2013-09-09T14:19:07.333 回答
2

人们想从服务器控制很多东西。这就是服务器端框架发挥作用的地方。

Web 应用程序不仅仅是一些链接在一起的 html 页面。还有很多其他的事情需要实现

  • 模型验证。
  • 保持模型一致。请记住,多个用户可以随时访问同一个模型,甚至可以更改它。
  • 控制资源访问。
  • 触发工作流。
  • 商业逻辑。

和其他类似的东西需要一个服务器框架。因此,如前所述,AngularJS 等客户端框架补充了服务器端框架。

于 2013-09-09T14:34:45.400 回答