# This PR - Addressing #3644 - Migrates the `DELETE /rest/*` endpoint to use TwentyORM - Factorizes common middleware logic into a common module --------- Co-authored-by: martmull <martmull@hotmail.fr>
23 lines
626 B
TypeScript
23 lines
626 B
TypeScript
import { Injectable, NestMiddleware } from '@nestjs/common';
|
|
|
|
import { NextFunction, Request, Response } from 'express';
|
|
|
|
import { MiddlewareService } from 'src/engine/middlewares/middleware.service';
|
|
|
|
@Injectable()
|
|
export class RestCoreMiddleware implements NestMiddleware {
|
|
constructor(private readonly middlewareService: MiddlewareService) {}
|
|
|
|
async use(req: Request, res: Response, next: NextFunction) {
|
|
try {
|
|
await this.middlewareService.authenticateRestRequest(req);
|
|
} catch (error) {
|
|
this.middlewareService.writeRestResponseOnExceptionCaught(res, error);
|
|
|
|
return;
|
|
}
|
|
|
|
next();
|
|
}
|
|
}
|