我知道 Express 驻留在服务器上,而 Angular 驻留在客户端上,但据我所知,Angular 可以做 Express 可以做的所有事情
- 路由
- 与数据库交互
看起来可能需要 Express 才能让 Node.js 提供 AngularJS 应用程序,但我不确定。
那么将 Express 添加到 AngularJS 应用程序有什么好处呢?
有些事情应该在服务器端完成(即 Express,而不是 Angular),最值得注意的是用户输入验证 - Angular,因为它是客户端,可以被篡改。
此外,如果您想提供除 Web 应用程序(即移动应用程序)以外的访问类型,则无论如何您可能都需要一个 API——Express 可以做到这一点,而 Angular 则不能。
最后,数据库访问——通常 Angular 应用程序需要连接到某种后端来执行 CRUD 操作。您要么使用 Firebase 等托管数据库,要么最终使用自己的数据库。后一种情况更受欢迎,您需要 Express(或类似的)。
Express 和 AngularJS 不会相互排斥,它们有不同的用途——事实上,两者都可以使用——express 用于所有服务器端逻辑,Angular 用于客户端逻辑。
Express 可用于托管 AngularJS 的服务/工厂使用的 API。您可以将 AngularJS 视为MVC
,将 Express 上的 API 视为SOA
.
人们想从服务器控制很多东西。这就是服务器端框架发挥作用的地方。
Web 应用程序不仅仅是一些链接在一起的 html 页面。还有很多其他的事情需要实现
和其他类似的东西需要一个服务器框架。因此,如前所述,AngularJS 等客户端框架补充了服务器端框架。