3

node-inspector は非常に便利なプログラムなので、ソース コードを見て、どのように機能するかをまとめてみようと思いました。私が知る限り、このプログラムはブラウザーとアクティブなデバッグ セッションの間の仲介者として機能し、それらの間の通信を容易にします。paperboy とソケットを介してブラウザと通信する方法は、かなり簡単に見えます。私が理解に苦しんでいるのは、ノードインスペクターが別のプロセスで進行中のノードデバッグセッションと通信する方法です。

もう少し明確かつ具体的にするために、私は通常、次の方法で node-inspector を実行します。

  1. 次のようにスクリプトを実行します。

    ノード --debug-brk myscript.js

  2. 次に、新しいターミナルを開き、node-inspector & を実行します。

私が知りたいのは、デバッグしたいスクリプトを node-inspector がどのように見つけて接続するかということです。ノードのデバッグセッションと通信するためのインターフェイスを実装しているように見える「debugr」オブジェクトを見つけましたが、最初にどのように接続するかは少し不思議です。

4

1 に答える 1

3

V8 にはデバッガー プロトコルが付属しており、どのアプリケーションでも使用できます。最初の記事で述べたように、アウトプロセス通信には JSON ベースの API が使用されます。フラグを指定してノード プロセスを実行する場合--debug-brk、v8 エンジンに対して、(このプロトコルを実装する) デバッガーが接続され、指定された (または既定の) ポートをリッスンするまで待機するように指示するだけです。

それは役に立ちますか?

于 2012-06-30T09:09:02.017 に答える