relnet/server/routes/auth.routes.ts
2025-04-17 13:06:50 +02:00

44 lines
1.1 KiB
TypeScript

import express from 'express';
import { check } from 'express-validator';
import * as authController from '../controllers/auth.controller';
import { auth } from '../middleware/auth.middleware';
const router = express.Router();
// @route POST /api/auth/register
// @desc Register a new user
// @access Public
router.post(
'/register',
[
check('email', 'Please include a valid email').isEmail(),
check('password', 'Password must be at least 6 characters').isLength({ min: 6 }),
check('username', 'Username is required').not().isEmpty(),
],
authController.register
);
// @route POST /api/auth/login
// @desc Login user
// @access Public
router.post(
'/login',
[
check('email', 'Please include a valid email').isEmail(),
check('password', 'Password is required').exists(),
],
authController.login
);
// @route POST /api/auth/logout
// @desc Logout user
// @access Private
router.post('/logout', authController.logout);
// @route GET /api/auth/me
// @desc Get current user
// @access Private
router.get('/me', auth, authController.getCurrentUser);
export default router;