是否有可能访问从何处调用的整个范围



在nodejs路由器中,我正在做很多会话的事情。在Ruby上的Rails中,我本可以将其带入自己的课程,例如session_helper,然后在路线控制器中,我只会说类似include sessions_helper的话,然后突然间,它可以访问当前类中的所有数据session.renew

现在,我看到的唯一方式是创建一个函数,然后通过req&在路由器中作为参数作为参数。

是否可以简单地导入类,然后开始使用其方法,这要求他们可以访问此范围。

在nodejs中具有通常的会话功能,当前请求的会话将在req.session中。由于在请求上操作的所有代码均来自可以访问req对象的请求处理程序,因此您只需将reqreq.session传递到任何想要在属于当前请求的会话上操作的代码即可。这就是通常在nodejs中完成的事情。

尚不清楚"导入类,然后开始使用其方法(。

app.use((req, res, next) => {
    req.mySessionObject = new mySession(req.session);
    next();
});

,然后,req.mySessionObject将是您的所有请求中的会话对象(使用适当的会话初始化会话初始化会话(,您只需在任何地方和在该对象上创建的任何方法访问req.mySessionObject即可。您仍然必须将reqreq.mySessionObject传递给任何想要使用会话对象或在路由处理程序范围内声明功能的功能,然后您可以随时直接访问req对象。

如果这不涵盖您要描述的内容,请向我们展示一个您想做的代码示例。

最新更新