Отрисовка страницы в настраиваемом HttpExceptionFilter
Кто-нибудь может предложить решение, как отобразить страницу в настраиваемом HttpExceptionFilter в nest.js при использовании Fastify и ejs. Ниже текущего HttpExceptionFilter:
import { ExceptionFilter, Catch, ArgumentsHost, HttpException, HttpStatus } from '@nestjs/common';
import { FastifyRequest, FastifyReply } from 'fastify';
@Catch(HttpException)
export class HttpExceptionFilter implements ExceptionFilter {
catch(exception: unknown, host: ArgumentsHost) {
const ctx = host.switchToHttp();
const response: FastifyReply<any> = ctx.getResponse();
const request: FastifyRequest = ctx.getRequest();
const status =
exception instanceof HttpException
? exception.getStatus()
: HttpStatus.INTERNAL_SERVER_ERROR;
const objResponse = Object.assign(exception, {
timestamp: new Date().toISOString(),
path: request.req.url
});
if (status === HttpStatus.UNAUTHORIZED)
return // page render with some content;
if (status === HttpStatus.NOT_FOUND)
return // page render with some content;
if (status === HttpStatus.INTERNAL_SERVER_ERROR) {
if (process.env.NODE_ENV === 'production') {
return // page render with some content;
}
else {
return response.status(status).send(objResponse);
}
}
}
}