@eropple/nestjs-correlation-id
这个软件包中包含一个单一的全局性中间软件,运行在
X-Correlation-Id 头曰. 如果在收到的请求中不存在,它就
生成随机的 UUID 并将其附加到 X-Correlation-Id 标题
请求(http.IncomingMessage)和反应(http.ServerResponse(中文(简体) )
请求管道。 如果它已经存在,则存在
值被复制到响应头.
不像其他软件包做同样的事情,这个 没有 允许您更改
标题。 那是因为其他包裹在我的 @eropple/nestjs-*
生态系统依赖 X-Correlation-Id 并打算用于
和他们一起... 如果你不去用的话 @eropple/nestjs-data-sec
或者说 @eropple/nestjs-auth你可能不在乎 但几乎每个人都用
X-Correlation-Id 或者说 X-Request-Id所以这对你还是有用的.
这是用快递测试的,因为它是中间的软件 它可能不会工作 斋戒. 如果有人想要添加快取版本, 拉请求是 感谢接受.
安装
yarn install @eropple/nestjs-correlation-id
使用量
将此添加为 第一个 位于您全球中枢软件链中的中枢软件。 (那边, 之后的任何东西, 喜欢
import { CorrelationIdMiddleware } from "@eropple/nestjs-correlation-id";
async function init() {
const app: INestApplication = /* ... */
app.use(CorrelationIdMiddleware());
/* add other middleware, interceptors, etc. */
await app.listen(3000);
}
默认使用 uuid/v4 生成一个值,但你可以做任何事情
你想通过一个 () => string 函数。 UUID 往往最强
共同的选择,虽然.