如何访问 nestjs 管道中的标头?

Alb*_*ert 1 nestjs

我正在编写一个验证管道,它需要从令牌中获取某些信息,所以我必须以某种方式将标头传递给验证管道。

Jay*_*iel 5

如果您需要访问管道中的标题,而标准@Headers()装饰器与管道不兼容,您可以创建自定义装饰器来获取兼容的标题,因为自定义装饰器始终与管道一起使用。

export const CustomHeaders = createParamDecorator(data: unknown, ctx: ExecutionContext) => {
  const req = ctx.switchToHttp().getRequest();
  return data ? req.headers[data] : req.headers;
}
Run Code Online (Sandbox Code Playgroud)

现在你的管道将工作 @CustomHeaders()