Soy un novato en node.js e intento crear una página de inicio de sesión.
Cuando intento iniciar sesión con las credenciales correctas, la página funciona según lo previsto. También vale la pena señalar que cuando intento iniciar sesión sin credenciales, aparece la ventana de alerta. Pero cuando intento iniciar sesión con las credenciales incorrectas, simplemente no funciona. He rastreado el error hasta la función de "alerta", pero no puedo entender por qué en el mundo la función de alerta funciona cuando se llama para mostrar la alerta de que no se insertó ningún nombre de usuario ni contraseña, pero se bloquea cuando intento mostrar que el nombre de usuario y la contraseña son incorrectos. Estoy bastante seguro de que el error proviene de la función de alerta.
El código está debajo.
¡Muchas gracias!
app.post('/auth', function(request, response) { var username = request.body.username; var password = request.body.password; if (username && password) { connection.query('SELECT * FROM accounts WHERE username = ? AND password = ?', [username, password], function(error, results, fields) { if (results.length > 0) { request.session.loggedin = true; request.session.username = username; response.redirect('/home'); response.end(); } else { alert('Incorrect Username and/or Password!'); } }); } else { alert('Please enter Username and Password!'); } });pero no puedo entender por qué en el mundo funciona la función de alerta cuando se llama para mostrar la alerta de que no se insertó ningún nombre de usuario ni contraseña
No debería funcionar.
alert no es una función proporcionada por Node.js. Pertenece a los navegadores, por lo que puede mostrar algo en la interfaz de usuario del navegador.
Para enviar algo desde un servidor creado en Node.js de regreso al navegador, entonces:
render , json o send ) en el objeto de response .