node.js - 如何使用完整的url调试nodejs?

标签 node.js debugging node-inspector

我已经安装了node-inspector和express,并成功使用url http://{localhost}:8080/debug?port=5858开始调试。

但是我正在开发一个静态文件服务器,并且想要验证当请求来自 http://{localhost}:8080/javascript/abc.js 时代码如何运行。我怎样才能做到这一点?在这种情况下,正确的网址是什么?

最佳答案

假设您的 Express 应用程序正在监听端口 3000:

var app = express();
app.use(express.static(path.join(__dirname, 'public')));
express.listen(3000);

正如您在问题中提到的,您的 Node-Inspector 正在监听 8080。

如何单步执行处理静态文件请求的代码:

  1. 在第一个浏览器选项卡中打开 Node Inspector (http://localhost:8080/debug?port=5858)。

  2. 在静态文件处理程序中设置断点。如果您使用的是 express.static,那么您需要找到此文件:

    node_modules/express/node_modules/connect/lib/middleware/static.js
    

    快捷方式:按 Ctrl+O(Mac 上为 Cmd+O)并在搜索框中输入 static.js

  3. 另一个浏览器选项卡中打开您的应用程序 (http://localhost:8080/javascript/abc.js)。

  4. 浏览器应显示进度并等待服务器的响应。由于服务器在断点处停止,因此没有响应。

  5. 使用 Node Inspector 切换到第一个选项卡并进行调试。

关于node.js - 如何使用完整的url调试nodejs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20004489/

相关文章:

node.js - 在 Debug模式下,当使用 Node 检查器时,mocha 不会停止在规范文件中的调试器语句上

javascript - 如何在jquery脚本中调用Node.js服务?

mysql - Node.js Promise 概念在 if else 条件下的 then block

node.js - node.js utils.inherits 的多重继承?

android - 调试问题 (Android Eclipse)

c++ - 在 Mac OS X 上调试和终止应用程序?

Java定时器从特定时间开始倒计时

firefox - Firefox 是否有等效于 chrome ://inspect?

javascript - Apollo-Server 以干净的方式显示错误

linux - Node 检查器不在 linux 服务器上工作