我正在尝试调试具有go后端和node.js前端的应用程序。我只用一个简单的bra run
来运行后端,它会发出:
NFO[12-08|11:57:59] Initializing HTTP Server logger=http.server address=0.0.0.0:3000 protocol=http subUrl= socket=
然后我尝试使用以下 npm 配置在WebStorm中运行调试会话:
当我启动调试会话时,它会输出以下内容:
/usr/local/bin/node --inspect-brk /usr/local/lib/node_modules/npm/bin/npm-cli.js run watch --scripts-prepend-node-path=auto
To debug the "watch" script, make sure the $NODE_DEBUG_OPTION string is specified as the first argument for the node command you'd like to debug.
For example:
"scripts": {
"start": "node $NODE_DEBUG_OPTION server.js"
}
Debugger listening on ws://127.0.0.1:9229/7c6f9f1b-377e-4a07-b7f8-0155b0d59adb
For help see https://nodejs.org/en/docs/inspector
Debugger attached.
所以我对调试Web应用程序一般都很陌生,但我预计现在我可以将浏览器打开到localhost:3000/my/script.js
并在WebStorm中遇到断点。但事实并非如此;我可以很好地导航我的应用程序(即使只有bra run
命令和调试会话在WebStorm中不活动),但它不会触发WebStorm中的任何断点。我也不完全确定ws://128.0.0.1:9229
端点的用途,但我认为它与我为什么无法工作有关。
我一直在努力解决这个问题几个小时,而且我一直坚持如何让应用程序运行,以便我可以使用WebStorm进行调试。
答案 0 :(得分:2)
使用此配置,您正在调试watch
npm脚本,而不是grafana提供的应用程序。要调试应用程序,您应该已创建 JavaScript debug 运行配置,并将localhost:3000
指定为URL。
请参阅https://www.jetbrains.com/help/webstorm/2017.3/debugging-javascript-in-chrome.html,调试在外部Web服务器上运行的应用程序