Guest User

Untitled

a guest
Aug 7th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. import {Request, Response, Router} from 'express';
  2. import passport from 'passport';
  3. import {Strategy} from 'passport-local';
  4.  
  5. const router: Router = Router();
  6.  
  7. const myUsers = [{username: 'will', password: 'secret'}, {username: 'foo', password: 'bar'}];
  8.  
  9. passport.use(
  10. new Strategy((username, password, done) => {
  11. // Application stops here
  12. const user = myUsers.find(u => u.username === username);
  13.  
  14. if (!user) {
  15. return done(null, false, {message: 'Incorrect username.'});
  16. }
  17. if (user.password !== password) {
  18. return done(null, false, {message: 'Incorrect password.'});
  19. }
  20. return done(null, user);
  21. })
  22. );
  23.  
  24. router.post('/login', (req: Request, res: Response) => {
  25. passport.authenticate('local', (err, user, info) => {
  26. if (err) {
  27. res.status(404).json(err);
  28. return;
  29. }
  30. console.log(user)
  31. if (user) {
  32. res.status(200);
  33. res.json({
  34. userInfo: user,
  35. });
  36. } else {
  37. res.status(401).json(info);
  38. }
  39. })(req, res);
  40. });
  41.  
  42. router.get('/login', (req: Request, res: Response) => {
  43. res.send({message: 'welcome to login'});
  44. });
  45.  
  46. export const users: Router = router;
Add Comment
Please, Sign In to add comment