目前使用了 express-http-context2 , 但是感觉有 bug ,在后续中无法获取设置的值
const app = express(); app.use(middleware); // use http context if (!excludeAuth(req)) { await verifyJWT(req, resp); console.log(get(HTTP_CONTEXT.ORG_ID)); }
![]() | 1 leopod1995 2024-01-09 19:27:02 +08:00 https://www.npmjs.com/package/express-http-context 感觉可能是写法问题? 检查版本 1. Install: npm install --save express-http-context (Note: For node v4-7, use the legacy version: npm install --save express-http-context@<1.0.0) 2. Make sure you require express-http-context in the first row of your app. Some popular packages use async which breaks CLS. 3. Node 10.0.x - 10.3.x are not supported. V8 version 6.6 introduced a bug that breaks async_hooks during async/await. Node 10.4.x uses V8 v6.7 in which the bug is fixed. See: https://github.com/nodejs/node/issues/20274. |
2 ddddad OP 后面尝试了下,设置值不在 await 方法里可以获取,可能是跟这个上下是基于回调有关系,具体原因还没搞明白 ps:感谢楼上 |
3 stabc 2024-01-22 13:13:16 +08:00 没必要用这个插件啊,直接用 asynclocalstorage 一样简单,还可以自定义 type |