Node.jsをデバッグする時は「node-inspector」を使うことが多いです
ですが、「node-nightly」版を使うと「node-inspector」なしでデバッグすることが可能です!
v6.3.0で標準実装されました!(2016/07/07追記)
準備
ダウンロード
「node-nightly」版を落としてきます
[https://nodejs.org/download/nightly/v7.0.0-nightly20160621ecc48a154d/]
↑ここに環境ごとのバイナリファイルがあるのでダウンロードします
解凍
tar zxvf node-v7.0.0-nightly20160621ecc48a154d-darwin-x64.tar.gz
解凍したら、binフォルダに実行ファイルがあるので、適当な場所にコピーします
サンプルプログラム
今回は、expressを使った簡単なサンプルプログラムを用意します
インストール
npm init -y
npm install -S express
ソース
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, World!');
});
app.listen(3000);
デバッグ
Nightly版の場合は
node-nightly --inspect --debug-brk app.js
v6.3.0が入ってる方は
node --inspect --debug-brk app.js
「--inspect」フラグを付けることでデバッグが可能です
実行時に最初の行で止めたい場合は、「--debug-brk」フラグを付けると止まります
実行すると、↓このように表示されるので
「chrome-devtools://...」の部分をコピーしChromeで開きます
そうすると↓このように最初の行で止まった状態になるので、任意の場所にブレイクポイントを貼ります
今回は、「 http://localhost:3000 」にリクエストが来たら止まるようにしました
「 http://localhost:3000 」にアクセスしてみると↓このようにブレイクポイントで止まり
変数の中身などが確認できます