如何调试Node.js服务器应用程序?

现在,我主要使用如下打印语句的警报调试:

sys.puts(sys.inspect(someVariable));

必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?


当前回答

我个人使用JetBrains WebStorm,因为它是我发现的唯一一个适用于前端和后端JavaScript的JavaScript IDE。

它可以在多个操作系统上运行,内置Node.js调试(以及大量其他功能)(http://www.jetbrains.com/webstorm/features/index.html).

我唯一的“问题”/愿望列表项目是:

在Mac上,它似乎比Windows更需要资源。在版本6中,它似乎不再是一个问题。如果它有Snippet支持(就像Sublime Text 2一样),那就太好了。比如,键入“fun”并点击“tab”以放入一个函数。请参阅下面的@WickyNilliams评论-使用Live模板,您也可以支持Snippet。

其他回答

我为那些不知道从哪里开始使用节点检查器的人编写了一个简短的Node.js调试入门。

调试Node.JS应用程序的方法如下:

1) 安装devtool并用它启动应用程序

npm install devtool -g --save
devtool server.js

这将在chrome开发人员模式下打开,因此您可以放置调试器点并进行测试。

2) 使用节点检查器进行调试

node-inspector

3) 使用--debug调试

node --debug app.js 

ndb是一种改进的Node.js调试体验,由Chrome DevTools支持

https://github.com/GoogleChromeLabs/ndb

Theseus是Adobe research的一个项目,它允许您在开源编辑器Brackets中调试Node.js代码。它有一些有趣的特性,如实时代码覆盖、追溯检查、异步调用树。

Visual Studio代码将在调试中为我们提供帮助。