使用 node.js 调试服务器端

Debugging server side with node.js

我脑子里有一个关于调试的紧迫问题,你看,当我写 Javascript 客户端时,我可以转到 Chrome 的控制台并跟踪我的变量和对象等以查看我的代码发生了什么更好..我只是无法理解我们如何在服务器端(节点 js)做同样的事情?假设我的前端向我的快速服务器提交了一个表单,我该如何检查 req 对象是否收到了它?我该去哪里检查变量和对象(调试)服务器端代码?我绝对不能在浏览器的控制台上执行此操作,因为代码存在于服务器端并在服务器端执行,所以我无法通过浏览器的控制台访问服务器端对象等。

如果您对变量和对象执行 console.log,您可以在您所在的命令提示符处看到它 运行 您的服务器

您仍然可以执行 console.log()。它会打印到您 运行 服务器所在的屏幕。但是,它不如使用调试器遍历代码好,调试器可以设置断点并执行调试器可以执行的许多其他操作。我用过 webstorm 的调试器和节点检查器。

您可能想查看您可能熟悉的 node-inspector. The debugger is like Chrome's Dev-Tool。下面的 link 提供了从安装到教程的所有内容。

https://github.com/node-inspector/node-inspector

console.log()有2种:

  1. 当它写入客户端代码时。它将在您的浏览器上控制台消息。
  2. 当它写入服务器代码时。它将在您的编辑器(例如 Webstorm)上控制台消息。

建议使用 debug 检查变量和对象,而不是使用 console.log(),因为它更方便。

您可能需要考虑 webstorm. It has advanced debugging 内置的 nodejs 支持,它允许您像在 Chrome 的调试工具中一样设置断点。

节点自带 REPL (Read-Eval-Print-Loop)。它的工作方式有点像 chrome 的控制台,但需要一些配置和设置它的范围。

这里有一个例子:http://derickbailey.com/2014/07/02/build-your-own-app-specific-repl-for-your-nodejs-app/