gpt4 book ai didi

javascript - 难以在 Node-Inspector 中设置断点

转载 作者:搜寻专家 更新时间:2023-10-31 23:21:23 25 4
gpt4 key购买 nike

我已经设置了一个可用的 Web 应用程序,现在我想学习如何在不使用 console.log 的情况下正确调试它。我已经通过 node-debug server.js(主脚本文件)设置并运行了 Node-Inspector,我想使用并检查在为以下 post 函数中的示例设置断点时发生的情况。

.post('/login', function (req, res){
var user = {
username: req.body.username,
password: hash(req.body.password)
};
db.findOne(user, function (err, data) {
if (data) {
req.session.userId = data.id;
res.redirect('/');
} else {
res.redirect('/login');
}
});
})

Node 检查器运行良好,自从使用 Google Chrome 开发人员工具进行基本 JavaScript 调试(jQuery 等)一段时间以来,我就熟悉它的设计。在我尝试登录应用程序之前,一切看起来都很好。它不是中断示例“var user”行,而是简单地以某种 setImmediate 函数的形式跳转到“timer.js”文件。即使当我尝试跳过时,我也永远不会到达我希望看到 post 函数在 req、res 变量等中包含什么的断点。

我正在使用 NodeJS v0.12.2 和 node-inspector 0.10.0。

我在项目中使用了 body-parser、bourne、express 和 express-session 模块。也许值得一提的是,我在与 8080 或 5858 不同的端口上运行应用程序,如果可能是这种情况,我还在另一个 .js 文件中有指定的代码,因为我可以成功断点的前几行(需要)主服务器js文件。

我不知道该做什么或如何在一个简单的 if 语句的任何地方设置断点。它只是简单地进入了一些 timers.js 并完成了一些步骤。

知道为什么会这样吗?

提前致谢。

最佳答案

这是 Node 0.12 的已知问题。* https://github.com/joyent/node/issues/25266

因此,作为解决方法,您可以使用 debugger 语句或切换到 iojs 进行调试。

我还建议您使用 NI 0.11.0。实现了网络调试。

关于javascript - 难以在 Node-Inspector 中设置断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30085917/

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