Я следовал руководству по Express, MySQL и JWT.
И я подтвердил, что все работает нормально, и теперь я хочу проверять дубликаты писем при регистрации.
Iзарегистрировал как исходный код учебника, так и код, который я пробовал.
Я добавил код, чтобы проверять электронную почту, когда строки> 0, проверять электронную почту при регистрации, но после проверки в Postman, дубликаты электронной почты по-прежнему сохраняются вБД.
учебный код
users.post('/register', function(req, res) {
var appData = {
"error": 1,
"data": ""
};
var userData = {
"email": req.body.email,
"password": req.body.password,
}
database.connection.getConnection(function(err, connection) {
if (err) {
appData["error"] = 1;
appData["data"] = "Internal Server Error";
res.status(500).json(appData);
} else {
connection.query('INSERT INTO users SET ?', userData, function(err, rows, fields) {
if (!err) {
appData.error = 0;
appData["data"] = "User registered successfully!";
res.status(201).json(appData);
} else {
appData["data"] = "Error Occured!";
res.status(400).json(appData);
}
});
connection.release();
}
});
});
код попытки
users.post('/register', function(req, res) {
var appData = {
"error": 1,
"data": ""
};
var userData = {
"email": req.body.email,
"password": req.body.password,
}
database.connection.getConnection(function(err, connection) {
if (err) {
appData["error"] = 1;
appData["data"] = "Internal Server Error";
res.status(500).json(appData);
} else {
connection.query('INSERT INTO users SET ?', userData, function(err, rows, fields) {
if (rows.length > 0) {
if (rows[0].email == email) {
appData.error = 1;
sppData["data"] = "Email Duplicate Error
"
} else {
if (!err) {
appData.error = 0;
appData["data"] = "User registered successfully!";
res.status(201).json(appData);
} else {
appData["data"] = "Error Occured!";
res.status(400).json(appData);
}
}
}
});
connection.release();
}
});
});