1、代碼
>mkdir test & cd test
>npm init -y
>npm i koa koa-route --save
>touch app.js
app.js:
const Koa = require('koa');
const router = require('koa-route');
const app = new Koa();
const main = ctx => {
? ctx.response.body = 'Hello World';
};
const welcome = (ctx, name) => {
? ctx.response.body = 'Hello ' + name;
};
app.use(router.get('/', main));
app.use(router.get('/:name', welcome));
app.listen(3000);
console.log('listening on port 3000');
2、啟動
>node --inspect app.js
或者
>node --inspect-brk=9239 app.js? ? ?//默認(rèn)端口9229,可指定端口啟動多個
3、Chrome啟動
1)
在Chrome瀏覽器里輸入http://localhost://3000,打開Chrome開發(fā)者工具,點擊綠色按鈕。

2)
在瀏覽器中輸入 chrome://inspect/

點擊inspect按鈕進(jìn)入調(diào)試界面,點擊source進(jìn)界面,點擊11邊框,在對應(yīng)的行打下斷點。

在瀏覽器輸入http://localhost:3000/account

左邊的調(diào)試工具,執(zhí)行跳出函數(shù),在console窗口打印變量值Hello account。
4、忘記加參數(shù)--inspect
如果啟動服務(wù)忘記加參數(shù)--inspect,可以通過以下方式啟動
>node app.js
>ps aux |grep app.js

執(zhí)行命令
>node -e 'process._debugProcess(935)' //其中935為進(jìn)程號。
或者
>kill -SIGUSR1 935? ?//nodejs定義SIGUSR1信號陷入debug模式。常見信號
注意:通過pm2方式啟動服務(wù)沒有帶--inspect也可以通過這種方式將服務(wù)陷入debug模式。
5、vscode調(diào)試
打開app.js文件,點擊調(diào)試-->啟動調(diào)試。服務(wù)會陷入debug模式,打斷點,通過瀏覽器輸入http://localhost:3000,程序在斷點停止,然后通過調(diào)試工具調(diào)試即可。
