Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const USER = module.exports = dynamoose.model('Usuarios', USER_SCHEMA);
- module.exports.getUserByUsername = function (user, callback) {
- var docClient = new AWS.DynamoDB.DocumentClient();
- var params = {
- TableName: "Usuarios",
- KeyConditionExpression: "#us = :uuuu",
- ExpressionAttributeNames: {
- "#us": "username"
- },
- ExpressionAttributeValues: {
- ":uuuu": user
- }
- };
- docClient.query(params, function (err, data) {
- if (err) {
- console.error("Unable to query. Error:", JSON.stringify(err, null, 2));
- } else {
- data.Items.forEach(function (user, callback) {
- console.log(user.username + ": " + user.password + user.email + user.firstName);
- });
- }
- callback(null, user);
- });
- }
- const USER = require('../models/user');
- router.post('/authenticate', (req, res, next) => {
- const username = req.body.username;
- const password = req.body.password;
- USER.getUserByUsername(username, (err, user) => {
- if (err) throw err;
- if (!user) {
- return res.json({
- success: false,
- "msg": "User not found"
- });
- }
- USER.comparePassword(password, user.password, (err, isMatch) => {
- if (err) throw err;
- if (isMatch) {
- const token = jwt.sign({
- username: user
- }, secret.secret, {
- expiresIn: 86400
- });
- res.json({
- success: true,
- token: 'JWT ' + token,
- user: {
- user: user.username,
- password: user.password,
- email: user.email
- }
- });
- } else {
- return res.json({
- success: false,
- msg: 'Wrong password'
- })
- }
- });
- });
- });
Add Comment
Please, Sign In to add comment