@maca134/ts-express-utils

1.0.17 • Public • Published

TS Express Utils

A set of functions for using classes in typescript as controllers for express.js

npm install --save @maca134/ts-express-utils

@controller('/auth')
export default class AuthController extends BaseController {

    @get('/login', PassportMiddleware)
	async getLogin(req: Request, res: Response) {
        //...
    }

	@get('/user')
	getUser(req: Request, res: Response) {
        //...
	}

    @post('/logs')
	async postLogs(req: Request, res: Response) {
        new Http401Unauthorized();
    }
}

export class PassportMiddleware extends MiddlewareBase {
	protected readonly _requestHandler: RequestHandler = (req, res, next) => {
		req.session['redirect_url'] = req.query['redirect'] || '/';
		return Passport.authenticate('steam')(req, res, next);
	};
}

const app = express();

const router = await loadController([new AuthController()]);
app.use(router);

Readme

Keywords

none

Package Sidebar

Install

npm i @maca134/ts-express-utils

Weekly Downloads

10

Version

1.0.17

License

MIT

Unpacked Size

26 kB

Total Files

34

Last publish

Collaborators

  • maca134