CNode

关于express sub-app挂载源码部分问题

问答
22015308200114dujiawei发布于7 年前最后回复7 年前1 回复3193 浏览0 收藏

sub-app在init中lazyrouter时会通过this._router.use(middleware.init(this))设置sub-app的req和res的原型指向sub-app的request和response。代码: setPrototypeOf(req, app.request) setPrototypeOf(res, app.response), 但用app.use(sub-app)进行挂载时会执行
router.use(path, function mounted_app(req, res, next) { var orig = req.app; fn.handle(req, res, function (err) { setPrototypeOf(req, orig.request) setPrototypeOf(res, orig.response) next(err); }); }); 这里是不是把sub-app的req和res重新挂在到app的request和response上面了呢?如果是的目的是什么?

查看回复

回复 (1)

刚测试完了 sub-app的req指向的prototype是app.request 不是 sub-app.request

参与回复
登录后即可参与回复。登录