Разработка аутентификатора входа с использованием узла, express, mysql, brcpt et c. Я застрял здесь, когда bcrypt.compare
выдает синтаксическую ошибку в консоли, которую я не могу отладить.
app.post('/login', async (req, res) => {
const email = req.body.email
const password = req.body.password
if (email && password) {
con.query("SELECT * FROM users WHERE email = ? AND password = ?", [email, password], function(err, results, fields){
if (await bcrypt.compare(password, hashedPassword, (err, isMatch) => {
if (err) throw err
callback(null, isMatch)
}) && results.length > 0) {
request.session.loggedin = true
request.session.email = email
response.redirect('/')
} else {
response.send('Incorrect Username and/or Password!')
}
response.end()
})
} else {
response.send('Please enter Username and Password!')
response.end()
}
})
Приведенный выше - дескриптор входа и маршрут для процесса.
Вот ошибка, выдаваемая в терминал:
[nodemon] restarting due to changes...
[nodemon] starting `node server.js`
/Users/vaidiklapalikar/Desktop/current project/server.js:51
if (await bcrypt.compare(password, hashedPassword, (err, isMatch) => {
^^^^^^
SyntaxError: Unexpected identifier
at wrapSafe (internal/modules/cjs/loader.js:1067:16)
at Module._compile (internal/modules/cjs/loader.js:1115:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47
[nodemon] app crashed - waiting for file changes before starting...
Пожалуйста, помогите мне! Заранее спасибо!