1.使用Inspector調(diào)試Node.js的優(yōu)勢(shì)
- 可查看當(dāng)前上下文的變量
- 可觀察當(dāng)前函數(shù)調(diào)用堆棧
- 不侵入代碼
- 可在暫停狀態(tài)下執(zhí)行指定代碼
2.Inspector的構(gòu)成以及原理
- WebSockets服務(wù)(監(jiān)聽命令)
- Inspector協(xié)議
- HTTP服務(wù)(獲取元信息)
3.激活調(diào)試
3.1 如何激活調(diào)試
$node --inpect app.js
3.2 激活調(diào)試后會(huì)發(fā)生什么
- Node進(jìn)程通過WebSockets監(jiān)聽調(diào)試信息
- 啟動(dòng)一個(gè)HTTP服務(wù)耐版,提供元信息
3.3 如何調(diào)試沒有激活的Node.js程序
在Linux和OSX上祠够,可以監(jiān)聽到SIGUSR1發(fā)送到調(diào)試信息
4.調(diào)試客戶端
4.1 調(diào)試客戶端是什么?
- 連接到Node.js Inspector的工具
- 商業(yè)和開源工具都有
4.2 調(diào)試客戶端有哪些粪牲?如何使用它們古瓤?
- Chrome DevTools 55+
- VS Code
- 其他(node-inspect、其他IDE)
4.2.1 Chrome DevTools
- 訪問chrome://inspect腺阳,點(diǎn)擊配置按鈕落君,確保Host和Port對(duì)應(yīng)
- 訪問元信息中的devtoolsFrontendUrl
- 點(diǎn)擊綠色小圖標(biāo)
4.2.2 VS Code
- 啟動(dòng)方式:按F5
- 配置launch.json
- 調(diào)試動(dòng)作
- 數(shù)據(jù)展現(xiàn)
- Log Point
- REPL