este es el all-exception.filter.ts :
@Catch() export class AllExceptionsFilter implements ExceptionFilter { constructor(private readonly httpAdapterHost: HttpAdapterHost) {} catch(exception: HttpException, host: ArgumentsHost) { const { httpAdapter } = this.httpAdapterHost; const ctx = host.switchToHttp(); const response = ctx.getResponse<Response>(); const request = ctx.getRequest<Request>(); const message = exception.message; const status = exception instanceof HttpException ? exception.getStatus() : HttpStatus.INTERNAL_SERVER_ERROR; console.log(); const responseBody = { success: false, message, }; httpAdapter.reply(ctx.getResponse(), responseBody, status); } }y este es un método de servicio que devuelve solo un artículo:
findOne(id: number) { return this.prisma.restaurant.findUniqueOrThrow({ where: { id, }, }); }El problema es que findUniqueOrThrow arrojará 404 si no se encuentra el elemento. pero en el filtro global cuando registro el estado, siempre recibo un código de estado 500.