为什么使用Node?
- 服务器和客服端所用语言一样JavaScript
- 上手快,学习成本比较低
- 前后端分离的项目,I/O并发比较高
为什么使用Express框架
- Express默认并不处理HTTP请求体中的数据,对于普通请求体(JSON、二进制、字符串)数据,可以使用body-parser中间件。而文件上传(multipart/form-data请求),可以基于请求流处理,也可以使用formidable模块或Multer中间件。
- express 将 node 的底层进行了封装,使用起来更方便,类rmvc的思想。代码能够更清晰
- express generator生成器,基本框架生成了,根据需要添加内容
- 基于node 的web框架有很多,很多都是基于express框架的
为什么使用mongodb
- 非关系性数据库
- 容易部署,以文档作为单位存储,字段能存储对象,查询速度快
- 没有表、行等概念,也没有固定的模式和结构
为什么使用mongoose
- Mongoose是MongoDB的一个对象模型工具,是基于node-mongodb-native开发的MongoDB nodejs驱动,可以在异步的环境下执行。同时它也是针对MongoDB操作的一个对象模型库,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单。
- 刷新得太快,或者多个用户同时访问数据库,数据库没来得及关闭,就会出错。db.open,访问过后db.close
- 使用mongoose对象建模之后,相同功能少量代码就能直线,访问之后不会关闭,一直开启
为什么使用Json-Server
- 开启一个服务器作为对前端的响应,不影响前端进度的开发
multer
- Multer是Express官方推出的,用于Node.jsmultipart/form-data请求数据处理的中间件