36 lines
973 B
JavaScript
36 lines
973 B
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const authController = require('../controllers/auth.controller');
|
|
const { validateRegistration, validateLogin } = require('../middleware/validation.middleware');
|
|
const { verifyToken } = require('../middleware/auth.middleware');
|
|
|
|
/**
|
|
* @route POST /api/auth/register
|
|
* @desc Register a new user
|
|
* @access Public
|
|
*/
|
|
router.post('/register', validateRegistration, authController.register);
|
|
|
|
/**
|
|
* @route POST /api/auth/login
|
|
* @desc Login user
|
|
* @access Public
|
|
*/
|
|
router.post('/login', validateLogin, authController.login);
|
|
|
|
/**
|
|
* @route POST /api/auth/logout
|
|
* @desc Logout user (client-side token removal)
|
|
* @access Public
|
|
*/
|
|
router.post('/logout', authController.logout);
|
|
|
|
/**
|
|
* @route GET /api/auth/verify
|
|
* @desc Verify JWT token and return user info
|
|
* @access Private
|
|
*/
|
|
router.get('/verify', verifyToken, authController.verifyToken);
|
|
|
|
module.exports = router;
|