Guest User

Untitled

a guest
Nov 2nd, 2017
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. const USER = module.exports = dynamoose.model('Usuarios', USER_SCHEMA);
  2.  
  3. module.exports.getUserByUsername = function (user, callback) {
  4. var docClient = new AWS.DynamoDB.DocumentClient();
  5.  
  6. var params = {
  7. TableName: "Usuarios",
  8. KeyConditionExpression: "#us = :uuuu",
  9. ExpressionAttributeNames: {
  10. "#us": "username"
  11. },
  12. ExpressionAttributeValues: {
  13. ":uuuu": user
  14. }
  15. };
  16. docClient.query(params, function (err, data) {
  17. if (err) {
  18. console.error("Unable to query. Error:", JSON.stringify(err, null, 2));
  19. } else {
  20. data.Items.forEach(function (user, callback) {
  21. console.log(user.username + ": " + user.password + user.email + user.firstName);
  22. });
  23. }
  24. callback(null, user);
  25. });
  26. }
  27.  
  28. const USER = require('../models/user');
  29.  
  30. router.post('/authenticate', (req, res, next) => {
  31. const username = req.body.username;
  32. const password = req.body.password;
  33.  
  34.  
  35. USER.getUserByUsername(username, (err, user) => {
  36. if (err) throw err;
  37. if (!user) {
  38. return res.json({
  39. success: false,
  40. "msg": "User not found"
  41. });
  42. }
  43. USER.comparePassword(password, user.password, (err, isMatch) => {
  44. if (err) throw err;
  45. if (isMatch) {
  46. const token = jwt.sign({
  47. username: user
  48. }, secret.secret, {
  49. expiresIn: 86400
  50. });
  51.  
  52. res.json({
  53. success: true,
  54. token: 'JWT ' + token,
  55. user: {
  56. user: user.username,
  57. password: user.password,
  58. email: user.email
  59. }
  60. });
  61. } else {
  62. return res.json({
  63. success: false,
  64. msg: 'Wrong password'
  65. })
  66. }
  67. });
  68. });
  69. });
Add Comment
Please, Sign In to add comment