与Nosql DB的angular度
build议使用Angular作为前端,使用CouchDB / Cloudant或MongoDB作为数据库,因为这些数据库可以直接提供JSON数据。 如果我不使用Java或Node或PHP中的任何中间件,它会起作用吗? 我想使用Angular和任何nosql DB。
你总是可以使用angular度前端和后端任何服务器端语言。 关于直接连接 – 你可以直接查询数据库。 每个数据库都有一个REST API,使您可以直接从客户端与它进行通信。 例如,MongoDB有这个: https : //docs.mongodb.org/ecosystem/tools/http-interfaces/希望这会有所帮助。 如果这是可取的? 这是一个意见问题,争论。
你可以在技术上开发一个完整的应用程序,只需要使用AngularJS调用DBaaS的REST API,它就可以工作。 但是,您不应该那样做,原因如下:
- 所有的业务逻辑都可以在客户端运行,这意味着任何人都可以在浏览器中看到(并改变!)所有的业务领域逻辑,安全控制,现场validation等,使用FireBug或开发工具等工具包含在每个浏览器中
- 你将在哪里放置和pipe理你的数据库访问凭据?
- 你会得到一个很难pipe理的代码,不容易适应未来的变化
记住规则高凝聚力,松耦合 。
一般来说,出于上述所有原因,您应该总是拥有某种服务器端逻辑层(如果您熟悉MVC框架,则使用“控制器”),并开发安全 , 可重用和可 维护的代码。 如果您需要实现业务逻辑中的更改,请转至API代码,如果需要更改整个持久性机制,则必须编辑服务器与数据库的交互,而不是UI等等,否则,每个将来的更改会影响整个应用程序。 保留不同职责的分离模块是一种很好的做法(我们如何表示数据?需要执行什么?我们如何呈现结果?)。
- $ locationProvider html5mode导致“无法GET”错误刷新 – AngularJS节点的应用程序
- 节点js / Angular js – 小心:临时标题显示
- 从Angular中的服务器下载文本/ csv内容,而不是在Mozilla FireFox中工作
- 协调Express(Passport)和AngularJS路线
- UnravellingAngularJs 1.5试图configuration节点失败
- 在Electron中运行时,有angular应用会中断
- angular2-webpack-starter如何将NodeJS服务器添加到项目中
- angular度控制器 – 保存节点发送的接收文件
- 如何在for循环中处理量angular器promise?