我的节点js项目中的全局变量问题

时间:2015-12-29 11:52:49

标签: javascript json node.js express

我在NodeJs项目中遇到全局变量的问题。在这个项目中,我使用express模块​​实现了webservices。当客户端使用该服务时,json对象将在请求正文中发送。我正在读取请求体中的所有属性并放入全局变量(如下所示)。

if(obj.businessEntities.year != null || obj.businessEntities.year=='undefined')    
      GLOBAL.gEffectiveYear = obj.businessEntities.year;

我对上面的全局变量的问题是,如果没有在json中传递year(它的工作方式与java中的静态变量一样),则第一个请求的值将用于下一个请求。我想使这个线程安全或保持每个请求唯一的值。除了使用全局变量之外还有其他选择吗?请帮忙。

我使用全局变量的原因是,我想设置一次json对象的值,并使用所有js文件中的值。

1 个答案:

答案 0 :(得分:3)

糟糕,我的第一个回答错过了你问题的最后一行,并认为你在谈论会话全局。这是一个编辑:

您真正想要做的是在 模块 中公开变量,并从您的 需要 其他文件。有关详细信息和语法,请参阅https://nodejs.org/api/modules.html