gpt4 book ai didi

node.js - Nodejs 并不总是显示错误

转载 作者:太空宇宙 更新时间:2023-11-04 00:07:13 25 4
gpt4 key购买 nike

我开始学习js和nodejs。我遇到了一个问题,花了很长时间才解决。

我正在使用 bcrypt 库,但我在 require 语句上犯了一个拼写错误:

const bcrpyt = require('bcryptjs');

然后在我使用的预保存架构上:

bcrypt.hash(user.password, 10, (err, hash) => {
user.password = hash;
next();
});

所以bcrypt未定义

在我的路线上:

user.save()
.then(/*some action*/)
.catch(e => res.status(400).send(e));

所以在发出请求后,我得到了状态 400,但 e 是空对象 {}

知道为什么没有错误,例如“在未定义上调用哈希”或类似的错误吗?

最佳答案

您只能将消息发送给客户端:

res.status(400).send(e.message)

我不知道您是否使用express.js或普通node.js,但如果您想在客户端看到这些错误,您可以将整个服务器请求代码包装在try catch block 中,如下所示(使用vanilla nodejs):

http.createServer(function(request, response) {
try{
response.writeContinue(undefinedVariable);
}catch (error) {
response.status(400).end(error.message);
}
}).listen(port);

关于node.js - Nodejs 并不总是显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51704906/

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