用node-inspectordebuggingnode.js

我正在尝试使用节点检查器来debugging我的nodejs应用程序。 但谷歌浏览器不显示代码。

我正在使用以下,

Node.js:v0.10.26

Express:4.0.0

节点检查器:v0.7.3

Google Chrome版本:34.0.1847.131

这是我正在做的启动debugging器..

$ node-inspector Node Inspector v0.7.3 Visit http://127.0.0.1:8080/debug?port=5858 to start debugging. 

在另一个控制台,

 $ node --debug app.js debugger listening on port 5858 $ 

然后开始谷歌浏览器,并去

 http://127.0.0.1:8080/debug?port=5858 

它打开节点检查器,但没有任何代码..所有的窗口是空的。

注意到我没有得到“Express服务器在端口3000上侦听”

尝试所有的节点检查员无法连接到节点,但没有运气

无法解决我错过的东西。 这将是伟大的你有任何build议..所以我可以在Google Chrome中debugging我的Node.js应用程序。

尝试运行node --debug-brk app.js而不是仅仅--debug 。 在节点检查器挂钩到节点进程之前,您的应用程序可能不会暂停。 使用--debug-brk将强制节点在应用程序的第一行中断,并等待debugging器附加到进程。 加载节点检查器Web界面是导致节点检查器附加到您的节点进程的原因; 这就是为什么在查询string(localhost:8080 / debug?port = 5858)中包含节点debugging端口的原因。 你告诉节点检查员它应该伸出和连接到什么端口。

这是一个animationgif,我放在一起显示了一个完整的安装和运行节点检查器。

在gif中,我使用了--debug标志,因为我没有debugging在启动时运行的任何代码。 我正在debugging请求处理程序,只有在请求页面时才会触发。 因此,刷新页面会导致节点检查器在该行上中断。

前段时间,我还制作了15分钟的YouTube教程。

http://youtu.be/03qGA-GJXjI

我希望有帮助!

在默认情况下,节点检查器尝试在启动debugging窗口之前预加载所有代码。 我有过实例,node-inspector只是挂起,因为这个预加载。 幸运的是,新版本可以select停止预加载,从而使检查器加载速度更快。

尝试node-inspector --no-preload

标准的远程debugging在节点6.5中完全被打破。 它被replace为新的内部节点function

 $ node --inspect --debug-brk build/server/server.js Debugger listening on port 9229. Warning: This is an experimental feature and could change at any time. To start debugging, open the following URL in Chrome: chrome-devtools://devtools/remote/serve_file/@62cd277117e6f8ec53e31b1be58290a6f7ab42ef/inspector.html?experiments=true&v8only=true&ws=localhost:9229/node Debugger attached. 

看到这里 – http://arveknudsen.com/?p=346%3Fpage_id%3D346&print=pdf – 更多信息

在这里输入图像说明

在“节点检查器”左侧的“Sources”选项卡中,有一个“带有三angular形的框” – 突出显示“Show Navigator”。 (见上图)。 打开find要debugging的文件,并在尚未运行的代码上放置一个断点。

另外请注意,如果您要debugging在起始节点上运行的代码,则在启动时需要使用--debug-brk选项。 然后,在Node Inspector中,您将不得不启动应用程序( F8运行全部)。 如果要debugging所有初始化代码(如启动Web浏览器),则需要此选项。

Interesting Posts