最近打算在項目過程中使用node.js輔助解決一些問題,需要用到node.js的調試技術。
通常而言,大家都會提到debugger或者node-inspector方法。
debugger方法誰用誰知道,一般應該沒有人去使用,
node-inspector呢,如果你運氣好,可能在兩步之內就可以使用chrome來調試了,但是如果運氣不好可能就看到
"Remote debugging has been terminated with reason: websocket_closed"錯誤

如果出現這個錯誤,很可能是你的node.js版本比較高的原因,你可以嘗試將版本除到6.3以下,或者,修改下面中的文件(Linux下自已去找相應的文件路徑)

將下圖中紅框中的代碼注釋掉

如果不介意使用最新版本的node.js(當前最新是7.5),那么就可以使用另一種選擇
見文檔
即在啟動node.js程序時使用如下命令
node --inspect=<ipaddress>:<port> --debug-brk index.js
然后在chrome瀏覽器中使用
chrome-devtools://devtools/bundled/inspector.html?experiments=true&v8only=true&ws=<ipaddress>:<port>/edf01bcd-4217-452a-b6ed-a24272862700
即可調試了。如果你覺得在chrome中每次輸入這個麻煩,那么也可以安裝一個chrom插件,然后使用相應的IP直接進入。


效果(請忽略被調試的代碼)

-------------------------2017年2月12日更新 -------------------------
每次都要輸入調試目標機器IP感覺很不爽,在Inspector的選項中可以進行配置,每次默認打開調試目標機器的地址。

進入后調上IP地址,打上兩個勾。然后在調試目標機器 node --inspect=192.168.1.139:9229 --debug-brk app.js ,Chrome就會自動開啟調試頁面了,簡直和VS一樣方便!

-------------------------2017年2月12日更新結束 -------------------------
浙公網安備 33010602011771號