目前使用了 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 354 天前
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 341 天前
没必要用这个插件啊,直接用 asynclocalstorage 一样简单,还可以自定义 type
|