访问不同node.js文件之间的会话变量

时间:2016-07-25 23:45:07

标签: node.js redis session-variables node-redis

我有一个场景,我试图在一个node.js文件中设置一个会话变量,然后在另一个node.js中访问同一个会话变量。

我不确定是否需要两次快递,每个node.js文件一次。

有谁知道如何在一个node.js文件中设置会话变量,然后调用另一个node.js文件中的函数来访问同一个会话变量?

我们非常感谢任何建议。

1 个答案:

答案 0 :(得分:0)

会话变量通常仅在代表特定用户的请求的上下文中有意义(因为会话属于特定用户)。

因此,如果您正在处理请求并希望在另一个模块中使用某些功能并且其他功能想要访问当前请求的会话状态,那么您通常只需传递{{1}对象到另一个模块的方法,以便它可以访问与该请求相关联的会话。

如果出于某种原因,当您认为需要访问会话信息时,您没有处理请求,请详细说明您正在做什么,因为您必须有权访问用户标识符,即进入会话存储区的密钥,以便找到合适的会话。

请记住,会话是按用户进行的,并且可以有数以万计的会话。您不将它们存储在模块变量中。它们位于会话存储中,并通过用户密钥(通常在cookie中)访问。

因此,会话仅在特定用户的上下文中有意义,并且通常位于特定请求的上下文中,使您可以直接访问会话。因此,如果您需要在另一个模块中使用某个函数并且该函数需要访问该会话,那么只需将用户会话本身的req对象传递给另一个方法作为方法调用的参数。 / p>

与往常一样,如果您向我们展示您的实际代码并且向我们展示您正在尝试解决的真正问题,我们可以更具体地回答您的具体问题。像这样的一般性问题导致我们必须教授一个广泛的通用解决方案,我们可能会或者可能没有达到您正在尝试做的事情的确切标记,这比我们向您展示自己的几行提示了更多的话代码适合解决问题。