Node.js 如何从express中的应用程序对象获取请求对象?

Node.js 如何从express中的应用程序对象获取请求对象?,node.js,express,Node.js,Express,在express中调用var app=module.exports=express.createServer()创建一个新的HTTPServer对象。我想从这个app(HTTPServer)对象访问当前的req对象。有办法做到这一点吗?只有当底层的HTTPServer实际收到请求时,才会创建req对象,并且只在处理请求时持续。因此,在回调上下文之外讨论它并没有真正的意义 在回调期间,您可以简单地从其他地方的会话对象复制适当的数据,并在websockets代码中使用该副本。但您不能指望请求对象,甚

在express中调用
var app=module.exports=express.createServer()
创建一个新的
HTTPServer
对象。我想从这个
app
HTTPServer
)对象访问当前的
req
对象。有办法做到这一点吗?

只有当底层的
HTTPServer
实际收到请求时,才会创建
req
对象,并且只在处理请求时持续。因此,在回调上下文之外讨论它并没有真正的意义

在回调期间,您可以简单地从其他地方的会话对象复制适当的数据,并在websockets代码中使用该副本。但您不能指望请求对象,甚至会话对象在处理完请求后仍然存在


展示一个小的代码示例会很有帮助;这听起来像是你遇到了一个“XY问题”(你想实现一个目标X,并且你已经决定技术Y是正确的方法,而实际上技术Z可能工作得更好)。

req在路由回调的范围内。@MattBall我已经将一个对象绑定到请求对象的会话对象(当前用户的id)上,我想在我的应用程序的websockets部分访问它,我似乎只有
应用程序
对象。因此,我想从这个HTTPServer对象访问请求对象。@MattBall是的,但由于我在我的应用程序的websockets部分需要它,所以我不调用任何路由。(我为所有路径启动socket.io websockets服务器)路由之外没有
请求
——请求的定义是“触发此路由的东西”,每个路径都有一个。。。“好吧,请求,这就进来了。@BrandonTilley但是一个带有socket.io的websockets请求呢?它没有指定的路由,但仍然包含对应用程序的请求。投票支持“XY问题”分析。我不知道:)