Files
auth-service/lib/app.ts

33 lines
821 B
TypeScript

import Koa from 'koa';
import bodyparser from 'koa-bodyparser';
import cookie from 'koa-cookie';
import session from 'koa-session';
import passport from './passport';
import { performanceLogger, performanceTimer } from './middleware/performance';
import { errorHandler } from './middleware/errorHandler';
import { authRouter } from './controllers/auth';
import { SESSION_KEY } from './constants/env';
const app: Koa = new Koa();
app.use(errorHandler);
app.use(performanceTimer);
app.use(performanceLogger);
app.use(bodyparser());
app.use(cookie());
app.keys = [SESSION_KEY];
app.use(session({}, app));
app.use(passport.initialize());
app.use(passport.session());
app.use(authRouter.routes());
app.use(authRouter.allowedMethods());
// Application error logging.
app.on('error', console.error);
export default app;