我在 NodeJs 项目中遇到全局变量问题。在这个项目中,我用express模块实现了web服务。当客户端使用服务时,会在请求正文中发送 json 对象。我正在读取请求正文中的所有属性并放入全局变量(如下所示)。
if(obj.businessEntities.year != null || obj.businessEntities.year=='undefined')
GLOBAL.gEffectiveYear = obj.businessEntities.year;
我对上述全局变量的问题是,如果 json 中未传递年份,则第一个请求的值将用于下一个请求(它的工作方式就像 java 中的静态变量一样)。我想让这个线程安全或维护每个请求的唯一值。除了使用全局变量还有其他选择吗?请帮忙。
我使用全局变量的原因是,我想设置一次 json 对象的值,并在所有 js 文件中使用这些值。
最佳答案
哎呀,我的第一个答案错过了您问题的最后一行,并以为您在谈论 session 全局变量。这是一个编辑:
您真正想要做的是在模块中公开变量,并要求从您的其他文件。请参阅https://nodejs.org/api/modules.html了解详细信息和语法。
关于javascript - 我的 Node js 项目中的全局变量出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34510483/