对于node开发来说,对express应该都是使用很多的,但是它就像一个黑匣子一样,并不知道内部的情况。
像var app=new express(); app.use('中间件')
这句的原理是怎样的,要是自己模拟,要如何实现那?
对于node开发来说,对express应该都是使用很多的,但是它就像一个黑匣子一样,并不知道内部的情况。
像var app=new express(); app.use('中间件')
这句的原理是怎样的,要是自己模拟,要如何实现那?
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答865 阅读✓ 已解决
5 回答2.3k 阅读
简单说下
express
的中间件机制:一点说明:
express
中的next()
的调用其实是不带req
,res
,next
这些参数的,之所以可以这样,是因为它对每个middleware
函数做了一些修改,拿上面的m1
函数来说,它的next
其实可以想成做了如下处理next = m2.bind(req, res, m2后的下一个middleware)
ps: 换个角度思考,中间件其实就是对
req
,res
这两个对象的属性加以增强的函数而已pps:
express
中的中间件机制其实不是很复杂,建议楼主直接看看源码