首页 > 解决方案 > NodeJS - 从请求标头全局存储值

问题描述

我需要存储请求标头中的值并在我的应用程序的几个部分中使用它。实现这一目标的最佳方法是什么?

这是我如何获取值的示例(app.js)

app.get('*', (req, res) => {
  global.exampleHeader = req.headers['example-header'];
});

然后在我所有的应用程序中随时使用这个值。

对于示例,我使用了解决我的问题的全局对象,但我不确定这是否是执行此类操作的最佳方式。还有其他建议或改进吗?

提前致谢!

标签: javascriptnode.jsexpress

解决方案


res.locals
一个对象,其中包含范围为请求的响应局部变量,因此仅可用于在该请求/响应周期(如果有)期间呈现的视图。否则,此属性与 app.locals 相同。
此属性对于公开请求级信息(例如请求路径名、经过身份验证的用户、用户设置等)很有用。

来源:http ://expressjs.com/en/4x/api.html#res.locals


推荐阅读