5

我正在使用 Express 在我的 Node.js 应用程序中公开一个 REST API。当收到 REST 请求时,我会从 HTTP 标头中提取用户信息。我希望这些信息在这个请求的整个生命周期中都可用,无论我在哪个函数中。一个明显但笨拙的方法是将用户信息作为参数传递给所有函数调用。有没有更好的办法?到目前为止,我已经找到了以下解决方案,但我不确定它们是否已准备好迎接黄金时段:

  1. StrongLoop 区域库:文档说“区域库和文档仍在开发中:存在错误、缺少功能和有限的文档。”
  2. Continuation-Local Storage:不确定这是否会成为 Node.js 的一部分。本期最后推荐看StrongLoop区
  3. Node.js 域:看起来并没有真正起飞。
4

1 回答 1

2

我不确定你是否还在寻找,但不久前我就是express-http-context为了这个目的而建造的。cls-hooks这是一个位于(以前continuation-local-storage)之上的快速中间件。

完全披露:这是我构建和维护的一个 npm 包。

于 2018-03-10T22:18:15.107 回答