相关疑难解决方法(0)

在 Nest.js 中记录请求/响应

Nest.js 的新手,
我正在尝试实现一个简单的记录器来跟踪 HTTP 请求,例如:

:method :url :status :res[content-length] - :response-time ms
Run Code Online (Sandbox Code Playgroud)

根据我的理解,最好的地方是拦截器。但是我也使用了Guards,正如前面提到的,Guards中间件之后拦截器之前被触发。

意思是,我的禁止访问没有被记录。我可以在两个不同的地方写日志部分,但不是。任何的想法?

谢谢!

我的拦截器代码:

import { Injectable, NestInterceptor, ExecutionContext, HttpException, HttpStatus } from '@nestjs/common';
import { Observable, throwError } from 'rxjs';
import { catchError, tap } from 'rxjs/operators';

@Injectable()
export class HTTPLoggingInterceptor implements NestInterceptor {

  intercept(context: ExecutionContext, call$: Observable<any>): Observable<any> {
    const now = Date.now();
    const request = context.switchToHttp().getRequest();

    const method = request.method;
    const url = …
Run Code Online (Sandbox Code Playgroud)

typescript nestjs

26
推荐指数
4
解决办法
2万
查看次数

标签 统计

nestjs ×1

typescript ×1