【发布时间】:2014-08-11 17:18:28
【问题描述】:
我是 Node.js 的新手,我想知道除了 session(),我是否可以使用“存储”来存储当前请求的变量?
我有一个基于授权标头的 API,以及存储在 Redis 中的有效令牌池。
因此我没有会话,也不想。
但我想在此请求期间存储变量以供进一步使用。比如我想把redis中找到的token对应的user_id存起来,这样我想用的地方就可以用了。
如果我这样做:
app = express();
app.user_id = 1;
可以吗,或者我的 user_id 会成为应用程序处理的所有请求的全局变量吗? (简而言之:应用程序是为服务器处理的每个请求实例化的,还是持久化的?)
如果这不行,我怎么能在没有会话的情况下实现这样的目标?
感谢您的帮助:)
【问题讨论】:
-
app处理所有请求,并且只会在启动时创建一次。当你说“我想要的任何地方”时,它有多宽泛?可以将事物放在当前请求中,但是您必须有权访问请求才能访问它们。 -
有多宽泛?嗯,我不知道。我习惯了会话。我只希望每个控制器都知道当前用户。那么,也许我可以按照您的建议插入请求中!查看文档后,似乎没有一个函数,所以也许我会将它用作关联数组。谢谢大佬们!你能发布一个答案以便我验证它吗?
-
当然,如果您的想法是这样,请告诉我:)
标签: node.js session session-variables