很难在Node-Inspector中设置断点

我已经安装了一个可以工作的Web应用程序,现在我想学习如何在不使用console.log的情况下正确debugging它。 我已经通过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'); } }); }) 

节点检查器很好地工作,我很熟悉它的devise,因为使用Google Chrome开发人员工具进行基本的JavaScriptdebugging(jQuery等)一段时间。 一切都很好,直到我尝试login到应用程序。 而不是插入一个“var user”行的例子,它只是简单地跳到“timer.js”文件的某个setImmediate函数中。 即使当我试图跳过我从来没有达到那个突破点,我希望看到post函数包含req,resvariables等内容。

我正在使用NodeJS v0.12.2和节点检查器0.10.0。

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

我不知道该怎么做,或者如何断言一个简单的if语句在哪里陈述。 它只是简单地去了一些timers.js和几步就完成了。

任何想法为什么发生这种情况?

提前致谢。

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

所以,作为解决方法,您可以使用debugger语句或切换到iojs进行debugging。

我也推荐你使用NI 0.11.0。 有networkingdebugging。