七天搞定node.js---第七天

自学node.js第七天的笔记,差点以为要烂尾了~

中间件

http://expressjs.com/en/guide/using-middleware.html
中间件的本质就是一个请求处理方法,我们把用户从请求到响应的整个过程分发到多个中间件中去处理,这样做的目的是提高代码的灵活性,动态可扩展的。

  • 同一个请求所经过的中间件都是同一个请求对象和响应对象

应用程序级别中间件

万能匹配(不关心任何请求路劲和请求方法):

1
2
3
4
app.use(function(req,res,next){
console.log('Time:',Date.now())
next()
})

只要是以 /xxx/ 开头的:

1
2
3
4
app.use('/a',function(req,res,next){
console.log('Time:',Date.now())
next()
})

路由级别中间件

get:

1
2
3
app.get('/',function(req,res,next){
res.send('hello world!')
})

post:

1
2
3
app.post('/',function(req,res,next){
res.send('got a post request')
})

put:

1
2
3
app.put('/user',function(req,res,next){
res.send('got a put request at /user')
})

delete:

1
2
3
app.get('/user',function(req,res,next){
res.send('got a delete request at /user')
})

错误处理中间件

1
2
3
4
app.use(function(err,req,res,next){
console.error(err.stack)
res.status(500).send('Something broke!')
})

内置中间件

  • express.static
  • express.json
  • express.urlencoded

第三方中间件

http://expressjs.com/en/resources/middleware.html

  • body-parser
  • compression
  • cookie-parser
  • morgan
  • response-time
  • serve-static
  • session

源代码可以去我的 github 克隆

-------------本文结束感谢您的阅读-------------
木槿前端不求人,有空就来坐坐。
0%