node.js - 无法使用 Chrome DevTools 调试 node.js

标签 node.js debugging google-chrome-devtools remote-debugging

当我运行 node --inspect app.js 时,它显示“已连接调试器”。然后我打开 chrome://inspect,看到我的应用程序在那里运行,因此我单击“打开专用开发工具”或“检查”(应用程序名称旁边)。不管我如何打开 Node DevTools,它似乎都没有连接到任何东西(我看不到那里的源代码,调试器语句被忽略,没有任何日志记录到控制台等)。我还尝试通过打开常规 DevTools 并单击绿色 Node 图标来打开它。

这很奇怪,因为 Chrome 清楚地看到服务器正在运行,并且某些东西明显连接到 Node(而且我认为我的网络上没有其他任何东西可以做到这一点),但我仍然无法让 DevTools 承认服务器的存在。

我还清楚地记得几周前以同样的方式调试了一些东西,当时一切都工作正常(虽然我记得我也为此遇到了一点困难,但我以某种方式让它在最后工作,我认为在命令末尾附加文件名而不是把它放在中间最后起到了作用)。从那时起发生的唯一一件事是我从 v8 更新到 v10 (LTS)

我显然已经尝试过重新启动,并阅读了有关 Node --inspect 的所有手册和文章,但没有任何帮助。

最佳答案

Chrome 版本:92

对我来说,问题是 Chrome DevTools 没有寻找我的 Node.js 进程正在使用的连接端口。

我做了以下事情:

  1. 使用 --inspect 标志启动 Node 进程。它在端口 9239 上启动了该进程。
  2. 在 Chrome 地址栏中输入 chrome://inspect/#devices
  3. 点击设备页面中的“打开 Node 专用开发工具”。
  4. 它会打开“DevTools-Node.js”窗口。
  5. 点击“连接”选项卡。
  6. 点击“添加连接”按钮。
  7. 在文本框中输入 localhost:9239 并点击“添加”。

添加正确的端口后,DevTools 连接到 Node.js 进程,我能够对其进行调试。

关于node.js - 无法使用 Chrome DevTools 调试 node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55315159/

相关文章:

node.js - Elasticsearch 不使用 Nodejs 插入记录?

google-chrome - Chrome 84检查元素,查找未像以前一样以黄色突出显示的结果

google-chrome - Chrome Web-SQL数据操作导致崩溃

javascript - Chrome DevTools 不显示 .js 文件

node.js - 使用 node-oauth 和通行证对 Twitter API 进行授权调用

javascript - Node js 中的 socket.io 客户端

javascript - Node 错误: Cannot find module './lib/querystring'

debugging - 如何暂停以检查 Makefile 运行的 sh 命令的结果?

c++ - 在使用 Visual Studio 2005 调试时调用函数?

javascript - 相对时间 jQuery 插件(如 Twitter、FB 等)在 Safari 中中断?