20

如果您的节点正在运行

node --debug server.js

这给了我一个端口号 xxxx,我应该在启动 Chrome 时使用这个端口号吗?

你从远程调试到它Google\ Chrome --remote-debugging-port=xxxx吗?

或者 9222 是一个神奇的端口,正如它所提到的那样。

我是否在正确的轨道上,尝试将 Chrome 启动--remote-debugger到 Node.jsserver.js

4

4 回答 4

19

node-inspector / --debug 现在被检查器替换了见下面的更新

#now deprecated / see below for update

#install node-inspector
npm install -g node-inspector

#start node-inspector, listen on port 8080 (default)
node-inspector --web-port=8080

#in another terminal session/window:
#while node-inspector is running, start your project in debug mode 
node --debug myproject.js

现在您可以浏览到http://your_server:8080以获取 myproject.js 的完整调试会话

如果由于防火墙或其他原因无法在远程端口上访问您的远程服务器,您可以创建一个从本地计算机上的端口 8080 到远程服务器上的 'localhost:8080' 的 ssh 隧道:

ssh -L 8080:localhost:8080 username@remoteserver -N

并在本地机器上使用http://localhost:8080调试远程 nodejs 会话时保持运行


2017 年 8 月更新

在检查模式下启动节点:

node --inspect=0.0.0.0:9229 myproject.js

或者如果您希望调试器在 myproject.js 的第一行中断:

node --inspect-brk=0.0.0.0:9229 myproject.js

然后在您的 chrome 浏览器中打开以下 URL:

chrome://inspect

单击“配置...”按钮并添加以下目标:

ip-or-name-of-server-running-node:9229

单击“完成”按钮后,您应该会在远程目标下看到 myproject.js。单击检查链接开始调试。不幸的是,inspect 链接在 Ubuntu 的 Chrome 58 上不起作用。它在适用于 Windows 的 Chrome 60 上运行良好。

于 2016-08-07T01:05:24.430 回答
9

用于node-inspector从 Chrome 远程调试您的节点应用程序,您已使用--debug您显示的选项启动。

于 2012-09-15T21:26:43.680 回答
5

最新版本的 Node (> v6.3.0) 和 Chrome 现在允许您使用 Chrome 开发人员工具来调试 Node.JS 进程,而无需安装其他任何东西。只需传递--inspectnode

$ node --inspect script.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://SOME-URL-HERE

只需在 Chrome 中打开该 URL,就可以开始了。

如果您需要在 Node 启动后立即暂停脚本,您也可以传入--debug-brk相同的命令。

于 2017-01-24T23:41:45.030 回答
0
  • 使用 $ vagrant ssh -- -L 5858:127.0.0.1:5858

      to ssh connect to VM. also this comment would start a proxy server on port 5858;
    
  • 您可以使用 telnet 127.0.0.1 5858 进行测试,以查看本地代理服务器是否启动。

  • 在 VM 中,您可以使用命令启动节点

  • $ 节点 --debug-brk app.js

  • 在 Web Storm 中设置调试配置。
  • 当您在 web Storm 中开始调试时,VM 中的 node.js 服务器将在几秒钟内启动。

PS:没有必要去碰vagrant文​​件。参考:将 WebStorm 连接到远程 node.js 调试会话

于 2016-01-15T04:15:23.540 回答