使用节点检查器调试 Node/Express RESTful API

Debugging Node/Express RESTful API with node-inspector

我看到很多关于调试 Node/Express 应用程序的问题,但是,它似乎是一个节点 Web 应用程序,而不是 RESTful 服务器。

我搭建了一个简单的服务器,当用命令 node server.js 启动服务器时,它工作得很好。我可以使用 Postman 或其他一些工具来调用 GET/POST 请求。

安装 node-inspector 模块后,当我使用命令 node-debug server.js 启动节点检查器调试时,它会在 http://127.0.0.1:8080/?ws=127.0.0.1:8080&port=5858 显示一个带有检查器 window 的网页。

然后,我再次使用邮递员调用请求(之前调用成功),但它显示 404 error: Cannot GET /api/v1/user/login.

如何向调试服务器发出请求?

试试 nodedev

1) 安装 nodedev:

sudo npm install -g nodedev

2) 启动您的服务器:

nodedev server.js

3) 访问页面http://127.0.0.1:7001/debug?port=7000进行调试...

4) ...

5) 盈利!

奖励:当检测到更改时,您的服务器将自动重启!

使用节点检查器而不是节点调试(来自同一模块) 在一个终端执行: node-inspector 在另一个终端执行 node --debug server.js

这是我的解决方案:不要直接使用 node-debug *.js。相反,在您的项目中打开两个终端。例如,我想调试 server-3.js,如下图所示。在一个终端中,使用 node-inspector 调试监听,另一个使用 node --debug server-3.js

向邮递员发送请求后:

可以在你的node-inspectorwindow监听5858端口看到你的调试情况:

我相信这就是你想要实现的。

最新更新是您还可以使用 vscode,它有一个名为 "Debugger for Chrome" 的插件,具有您想要的调试功能。

请注意 --debug 选项已弃用。 --inspect 是首选。否则你会得到一个 warning/error.

(node:11524) [DEP0062] 弃用警告:node --debugnode --debug-brk 无效。请改用 node --inspectnode --inspect-brk