1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
const express = require('express');
const router = express.Router();
const passport = require('passport');
const userController = require('../controllers/user');
const productsController = require('../controllers/products');
const isAuth = passport.authenticate('jwt', {session: false});
const isAdmin = (req, res, next) => {
if (!req.user.admin)
res.status(401).json({status: "You need to be an administrator!"});
else next();
}
router.post('/register', userController.register);
router.post('/login', userController.login);
router.get('/products', productsController.index);
router.get('/products/:id', productsController.show);
router.post('/products', isAuth, isAdmin, productsController.store);
router.patch('/products/:id', isAuth, isAdmin, productsController.update);
router.delete('/products/:id', isAuth, isAdmin, productsController.destroy);
module.exports = router;
|