Advertisement
Guest User

Untitled

a guest
Jul 25th, 2018
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. var express = require('express')
  2. var router = express.Router()
  3. var User = require('../models/user')
  4. var passport = require('../passport')
  5.  
  6. router.get('/google', passport.authenticate('google', { scope: ['profile'] }))
  7. router.get('/google/callback', passport.authenticate('google', {
  8. successRedirect: '/',
  9. failureRedirect: '/login'
  10. })
  11. )
  12.  
  13. router.get('/user', (req, res, next) => {
  14. console.log('==== user!!====')
  15. console.log(req.user)
  16. if (req.user) {
  17. return res.json({ user: req.user })
  18. }
  19. else {
  20. return res.json({user:null})
  21. }
  22. })
  23.  
  24. router.post(
  25. '/login',
  26. function (req, res, next) {
  27. console.log(req.body)
  28. console.log("==========")
  29. next()
  30. },
  31. passport.authenticate('local'),
  32. (req, res) => {
  33. console.log('POST to /login')
  34. const user = JSON.parse(JSON.stringfy(req.user))
  35. const cleanUser = Object.assign({}, user)
  36. if (cleanUser.local) {
  37. console.log('Deleting ${cleanUser.local.password}')
  38. delete cleanUser.local.password
  39.  
  40. }
  41. res.json({user: cleanUser})
  42.  
  43. }
  44. )
  45.  
  46. router.post('/logout', (req, res) => {
  47. if (req.user) {
  48. req.session.destroy()
  49. res.clearCookie('connect.sid')
  50. return res.json({ msg: 'logging you out' })
  51. }
  52. else {
  53. return res.json({ msg: 'no user to log out!' })
  54. }
  55.  
  56.  
  57. })
  58.  
  59. router.post('/signup', (req, res) => {
  60. const {username, password} = req.body
  61.  
  62. User.findOne({'local.username': username}, (err, userMatch)=>{
  63.  
  64. if (userMatch){
  65. return res.json({
  66. error: 'Sorry, already a user with the name: ${username}'
  67. })
  68. }
  69. const newUser = new User({
  70. 'local.username': username,
  71. 'local.password': password
  72. })
  73.  
  74. newUser.save((err, savedUser)=>{
  75. if (err) return res.json(err)
  76. return res.json(savedUser)
  77. })
  78.  
  79. })
  80. })
  81.  
  82. module.exports = router
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement