10

NodeとExpressに関する私のかなり限られた経験は役に立ちませんが、ターミナルウィンドウからアプリをデバッグするのに問題があります。ここに問題があります:

実行中のnode debug app.jsリターン:

< debugger listening on port 5858
connecting... ok
break in server.js:1
    1 var express = require('express');

これはエクスプレスアプリをデバッグする正しい方法ですか?

4

3 に答える 3

10

人気のあるGUIデバッガーがあります(WebKit、つまりChrome、Safariを活用しています)。

https://github.com/dannycoates/node-inspectorを試してみてください

于 2012-04-30T22:56:16.787 に答える
10

NodeInspectorの呼び出しをもう少し明確にエコーするだけです。

$ sudo npm install -g node-inspector
$ node-debug app.js <arguments to your app>
debugger listening on port 5858
Node Inspector is now available from http://localhost:8080/debug?port=5858
Debugging `app.js`

(Webkitベースの?)ブラウザでそのアドレスに移動します。または、ポートが開いている限り、リモートでも問題なく動作します。

ここに画像の説明を入力してください

appこれで、すべてのサーバー側変数(たとえば、オブジェクト)に完全にアクセスでき、クライアント側デバッガーに公開されます。それはかなり魔法です。ブレークポイントは、app.get()エントリポイント、サーバーの初期化など、どこにでも設定できます。

于 2014-04-17T02:01:42.953 に答える
2

個人的には、ノードインスペクターと昔ながらのステートメントを組み合わせて、console.log何が起こっているのかを把握することを好みます。(node-inspectorによって言及されたv8-profilerはNode 0.6.xで動作するとは思いませんが、正直なところ、私は試していません。)

他の誰かがNode.jsアプリをデバッグするためのよりよく保守されたツールを持っているなら、私もそれを聞きたいですが、これは私が知っている中で最高です。

于 2012-04-30T22:57:00.540 に答える