express 4.x 搭建Node项目框架
npm install -g express-generator
express projectName
cd projectName
npm install
手动添加文件夹config、models、utils、service
public文件夹
存放静态文件
app.js页面内容
项目入口
1.引入express框架,创建个服务器,并监听端口
2.用什么模块引什么模块 先require再app.use
3.再将所有的接口引进来 app.use(‘/api/v1/control’,control)
routes文件夹 根据路由响应客户端的请求
存放:根据不同的路由,划分请求类型,然后拿到数据库对应数据,最后对数据进行处理展示到页面中
app.get('/', function (req, res) {
res.send('Hello World!');});
app.post('/', function (req, res) {
res.send('Got a POST request');});
service文件夹
存放:每个对象增删改查的函数方法
models文件夹
存放数据库中每个集合的模型
util文件夹
存放公共的方法
config文件夹
存放:数据库的配置 端口ip的配置 日志的配置
Node中路由的三种用法:
1.app.get() //普通路由路径
2.app.route().get() //创建路由路径的链式路由句柄
3.express.Router.use() //创建可挂载的模块化路由句柄
express.Router.get()
app.METHOD(path, [callback...], callback)
路由句柄:每个路径都会有对应的函数来处理(这个函数叫句柄)
next() 和 next(‘route’)区别
middleware中间件
中间件是一个函数,可以获取req、res、next(请求-响应循环)
中间件功能:执行任何代码、
修改请求和响应的对象、
终结请求-响应循环、
调用堆栈中的下一个中间件
注:若当前中间件没有终结请求-响应循环,必须调用next()方法交给下一个中间件,否则请求会挂起。
express可使用五种中间件:
应用级中间件 绑定到express上 使用express.use()/express.get()
路由级中间件 绑定到express.Router() 使用express.Router().use()
错误处理中间件 必须使用4个参数 err req res next
内置中间件 express唯一内置中间件 express.static()
第三方中间件 先安装再引进