gpt4 book ai didi

javascript - 尽管使用了 db.insert 函数,数据库并未更新

转载 作者:行者123 更新时间:2023-12-03 01:01:06 25 4
gpt4 key购买 nike

我正在我的 Express 应用程序中使用 Node 邮件程序包创建忘记密码功能,该功能将新密码发送到用户的电子邮件,然后使用新密码更新数据库,但问题是数据库没有更新新密码我已经检查了我的代码很多次但无法找出问题所在。

`app.post('/forgot', (req, res) => {
const { email } = req.body;
let newPassword = generatePassword();
db.select('*').from('login')
.where('email', '=', email)
.returning('*')
.then(user => {
if (user.length > 0) {
let mailOptions = {
from: 'haroonrmit@gmail.com',
to: `${email}`,
subject: 'Password reset',
html: `<p>Your new password is ${newPassword}</p>`
};
transporter.sendMail(mailOptions);
db('login')
.where({email: user[0].email})
.update({
password: newPassword
})
res.json(user[0]);
} else {
res.status(404).json('email not found');
}
})
});`

最佳答案

您没有为第二个查询调用 .then,因此它已构建但从未运行。

此外,您的 http 在知道更新是否成功执行之前会返回一个值。

关于javascript - 尽管使用了 db.insert 函数,数据库并未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52618461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com