Skip to content

Commit c363a7a

Browse files
committed
Use promise-based router
1 parent 983e528 commit c363a7a

File tree

4 files changed

+17
-13
lines changed

4 files changed

+17
-13
lines changed

src/apps/mooc_backend/app.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import bodyParser from 'body-parser';
22
import express from 'express';
33
import helmet from 'helmet';
44
import compress from 'compression';
5+
import Router from 'express-promise-router';
56
import { registerRoutes } from './routes';
67
import { registerSubscribers } from './subscribers';
78

@@ -17,7 +18,10 @@ app.use(helmet.hidePoweredBy());
1718
app.use(helmet.frameguard({ action: 'deny' }));
1819
app.use(compress());
1920

20-
registerRoutes(app);
21+
22+
const router = Router();
23+
app.use(router);
24+
registerRoutes(router);
2125
registerSubscribers();
2226

2327
export default app;
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { Express } from 'express';
1+
import { Router, Request, Response } from 'express';
22
import container from '../config/dependency-injection';
33

4-
export const register = (app: Express) => {
4+
export const register = (router: Router) => {
55
const coursePutController = container.get('Apps.mooc.controllers.CoursePutController');
6-
app.put('/courses/:id', coursePutController.run.bind(coursePutController));
6+
router.put('/courses/:id', (req: Request, res: Response) => coursePutController.run(req, res));
77

88
const coursesCounterGetController = container.get('Apps.mooc.controllers.CoursesCounterGetController');
9-
app.get('/courses-counter', coursesCounterGetController.run.bind(coursesCounterGetController));
9+
router.get('/courses-counter', (req: Request, res: Response) => coursesCounterGetController.run(req, res));
1010
};
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { Express } from 'express';
1+
import { Router } from 'express';
22
import glob from 'glob';
33

4-
export function registerRoutes(app: Express) {
4+
export function registerRoutes(router: Router) {
55
const routes = glob.sync(__dirname + '/**/*.route.*');
6-
routes.map(route => register(route, app));
6+
routes.map(route => register(route, router));
77
}
88

9-
function register(routePath: string, app: Express) {
9+
function register(routePath: string, router: Router) {
1010
const route = require(routePath);
11-
route.register(app);
11+
route.register(router);
1212
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { Express } from 'express';
1+
import { Router, Request, Response } from 'express';
22
import container from '../config/dependency-injection';
33
import StatusController from '../controllers/StatusGetController';
44

5-
export const register = (app: Express) => {
5+
export const register = (router: Router) => {
66
const controller: StatusController = container.get('Apps.mooc.controllers.StatusGetController');
7-
app.get('/status', controller.run.bind(controller));
7+
router.get('/status', (req: Request, res: Response) => controller.run(req, res));
88
};

0 commit comments

Comments
 (0)