-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathusers.js
32 lines (19 loc) · 1019 Bytes
/
users.js
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
26
27
28
29
30
31
32
const express = require('express');
const passport = require('passport');
const router = express.Router();
const userController = require('../controllers/usersController');
router.get('/profile/:id', passport.checkAuthentication , userController.profile);
router.post('/update/:id', passport.checkAuthentication, userController.update);
router.get('/sign-in', userController.signIn);
router.get('/sign-up', userController.signUp);
router.post('/create', userController.create);
// Use Passport as a middleWare to Authenticate
router.post('/create-session', passport.authenticate(
'local',
{failureRedirect: '/users/sign-in'}
) , userController.createSession);
router.get('/sign-out', userController.destroySession);
// For Google Oauth Strategy
router.get('/auth/google', passport.authenticate('google', {scope: ['profile', 'email']}));
router.get('/auth/google/callback', passport.authenticate('google', {failureRedirect: '/users/sign-in'}), userController.createSession);
module.exports = router;