什么是Node
- webserver
一种javascript的运行环境,可以用来做服务器,也可以用来像批处理一样执行某些任务。在前端开发里一般是用来执行编译 CSS 预编译语言、预编译、压缩、混淆 JS、压缩图片、reload、deploy 等工程化任务,常用的平台有 Grunt 和 Gulp。
能够使得javascript脱离浏览器运行,最主流的应用是用来跑npm。
什么是mongoose
- ORM = object relational mapper,一个library,我们使用它的API来操作mongodb.
MongoDB的一个对象模型工具,使用mongoose来使用mongodb代替直接使用mongodb的API,更倾向于目前的工业标准。
在项目里要怎么使用mongodb
当browser或者APP发送请求,会先被Node接受或者过滤。我们可以在Node里面通过一些规则加强我们对数据的保护:比如一个用户通过网页向数据库发送增加或者删除数据的请求,在web server里面,我们会判断这个用户是不是有权限。
Browse or App <--请求发送 --> Node(web server) <--通过mongoose使用--> MongoDB
MongoDB的基础知识
- MongoDB(本身是数据库)允许一个instance里面有多个数据库。
- MongoDB的核心单元是Collection。
collection里面存的是一个个数据,各个collection的数据不能混淆。比如书的collection和食品的collection。 - 增(create)删(destroy)查(read)改(update):CRUD