UNPKG

express-typeorm-rest-boilerplate

Version:

Boilerplate code to get started with building RESTful API Services

33 lines (28 loc) 979 B
import { NextFunction, Request, Response, Router } from 'express'; import { Logger } from 'winston'; import { Container } from 'typedi'; import { isAuth, attachUser, checkRole } from '../middlewares'; import UserService from '../services/UserService'; const route = Router(); route.get( '/', isAuth, checkRole('admin'), async (req: Request, res: Response, next: NextFunction) => { const logger: Logger = Container.get('logger'); logger.debug('Calling GET /user endpoint'); try { const userServiceInstance = Container.get(UserService); const users = await userServiceInstance.find(); return res.json(users).status(200); } catch (e) { return next(e); } } ); route.get('/current', isAuth, attachUser, (req: Request, res: Response) => { const logger: Logger = Container.get('logger'); logger.debug('Calling GET /user/current endpoint'); return res.json({ user: req.currentUser }).status(200); }); export default route;