Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在windows上调试basic node.js应用程序(非http)_Node.js_Node Inspector - Fatal编程技术网

如何在windows上调试basic node.js应用程序(非http)

如何在windows上调试basic node.js应用程序(非http),node.js,node-inspector,Node.js,Node Inspector,我知道如何使用节点检查器和iisnode调试http应用程序。但是我可以在windows上使用node inspector调试非http节点应用程序吗 我试过: node debug test.js 它说: debugger listening on port 5858 但是开头http://localhost:5858/在Chrome中没有任何功能 顺便说一句:运行node debug test.js会启动命令行调试器,该调试器可以正常工作。但它与节点检查器完全不同。一些链接可能会帮助

我知道如何使用节点检查器和iisnode调试http应用程序。但是我可以在windows上使用node inspector调试非http节点应用程序吗

我试过:

 node debug test.js
它说:

debugger listening on port 5858
但是开头<代码>http://localhost:5858/在Chrome中没有任何功能



顺便说一句:运行
node debug test.js
会启动命令行调试器,该调试器可以正常工作。但它与节点检查器完全不同。

一些链接可能会帮助您:

  • (瑞安本人的剧集)
它显示:调试器正在端口5858上侦听

我想知道这一点,但由于Node.js文档表明调试器可以通过简单的TCP协议访问,并且没有提到HTTP,所以我猜不会,它在_http://localhost:5858.


“V8附带一个扩展的调试器,可通过简单的TCP协议在进程外访问”-

要使用节点检查器,右开关是
node--debug
而不是
node debug

以下是详细的步骤:

  • 全局安装节点检查器(
    npm安装-g节点检查器
  • 在命令行窗口中,运行:
    node inspector
  • 打开Chrome并转到
    http://localhost:8080/debug?port=5858
    。您将获得节点检查器UI,但没有任何正在运行的应用程序
  • 从另一个命令行窗口,使用
    --debug
    开关运行应用程序,如下所示:
    节点--debug test.js
  • 刷新Chrome标签,瞧 有几点很有趣:

    • 如果您关闭应用程序并再次启动,只需刷新节点检查器选项卡。它将保留所有断点
    • 要在第一行自动中断,请使用
      节点启动应用程序--debug brk test.js

      • 节点检查器可能非常有用

        从任何支持WebSocket的浏览器中使用它

        断点、探查器、livecoding等


        仅供参考,在OSX 10.8中,Chrome v26似乎不起作用,但Safari 6使用与上述相同的说明并使用0.0.0.0:8080来连接

        Danny Coates在某个地方的另一篇帖子说,按照以下顺序进行操作:

      • 您的节点进程:node--debug(或--debug brk)my_program.js
      • 节点检查器:节点检查器
      • 浏览器指向0.0.0.0:8080

      • 最近微软发布了。它具有非常舒适的Visual Studio node.js调试功能。

        如果您是Windows上的noob(像我一样),并且您会遇到“node inspector not Recognited”(节点检查器未识别)或Windows JScript错误。。。尽管有全局安装、添加到路径等,但这可能会有所帮助

        导航到C:\Users\urusername\AppData\Roaming\npm

        然后运行node-debug.cmd或node-inspector.cmd

        你应该得到像这样的神奇词汇

        Node Inspector v0.12.7
        Visit http://127.0.0.1:8080/?port=5858 to start debugging.
        Debugger listening on port 5858
        

        太棒了。如果您知道更好的解决方案,请让我知道

        TCP与HTTP的优点。我知道命令行调试器,但它确实是我想要的节点检查器体验。您可以尝试使用OSX上最新的NodeJ功能强大的调试器,似乎“节点调试”做得对,“节点--调试”根据这两个版本的不同,是关于节点应该做什么:
        --debug
        将启动一些要调试的应用程序,
        debug
        将启动节点调试一些应用程序。因此,这是同一故事的两个方面。