中间件

一、 中间件的介绍

http://expressjs.com/en/guide/using-middleware.html

  • 中间件的本质就是一个请求处理方法,我们把用户从请求到响应的整个过程分发到多个中间件去处理,这样做的目的是提高代码的灵活性,动态可扩展的。
    污水处理厂图片
  • 同一个请求所经过的中间件都是同一个请求对象和响应对象

二、 应用程序级别中间件

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

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

只要是以 '/xxx/'开头的:

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

三、路由级别中间件

  • get:
app.get('/', function(req, res){
	res.send('hello world')
})
  • post:
app.get('/', function(req, res){
	res.send('Got a POST request')
})
  • put:
app.put('/user', funxtion(req, res){
	res.send('Got a PUT request at / user')
})
  • delete:
app.delete('/user', function (req, res){
	res.send('Got a DELETE request at / user')
})

三、错误处理中间件

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

四、 内置中间件

  • express.static serves static assets such as HTML files, images, and so on.
  • express.json parses incoming requests with JSON payloads. NOTE: Available with Express 4.16.0+
  • express.urlencoded parses incoming requests with URL-encoded payloads. NOTE: Available with Express 4.16.0+

五、第三方中间件

  • body-parser
  • comperssion
  • cookie-parser
  • morgan
  • response-time
  • serve-static
  • session
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值