Files
hackApi/routes/login.js
T
2020-08-02 19:21:23 -05:00

84 lines
2.3 KiB
JavaScript

const connection = require('../conf/connection');
const express = require('express');
const bcrypt = require('bcrypt');
var app = express();
function query(consulta) {
return new Promise(function(resolve, reject) {
connection.query(`${consulta}`, (error, results, files) => {
if (error) reject(error);
resolve(results);
});
})
}
app.post('/loggin', async(req, res) => {
var aux = req.body.usuario;
aux = aux.toLowerCase();
let usuario = req.body.usuario;
var password = req.body.password;
var pass = await bcrypt.hash(password, 10);
console.log(usuario, " ", pass, " ", password);
var text = true;
for (let i = 0; i < aux.length; i++) {
if ((aux[i] < 'a' || aux[i] > 'z') && aux[i] != '_') {
text = false;
break;
}
}
let caadena = `select * from usuario;`
let resuesta = await query(caadena)
console.log("esta es la respuesta", resuesta);
if (text == false) {
res.status(400).json({ err: true, msj: "Correo o contraseña invalidos" });
false;
}
let password_consulta;
try {
let select = `select * from usuario where usuario="${usuario}";`;
password_consulta = query(select);
} catch (error) {
res.status(400).json({ error: true, msj: "Error en la consulta en del usuario" });
return;
}
let exite;
let comparar;
let id;
await password_consulta.then(function(v) {
existe = v.length;
console.log(existe);
if (existe == 1) {
comparar = v[0].password
id = v[0].id_usuario;
}
})
if (existe == 0) {
res.status(400).json({ err: true, mjs: 'Correo o contraseña invalidos' });
return;
}
// var pass = await bcrypt.hash(password, 10);
//console.log(pass);
console.log(comparar);
let correcto = bcrypt.compareSync(password, comparar);
if (correcto == true) {
res.status(200).json({ err: false, mjs: `Bienvenido`, id_usuario: id });
return;
} else {
res.status(400).json({ err: true, mjs: 'Correo o contraseña invalidos' });
return;
}
});
module.exports = app;