フォローアップ#2 : これは、node.js のイディオムであるコールバック (コールバックを呼び出すコールバックを呼び出す...) を適切に使用していない 99% の「私の悪い」ことだと思います。適切にリファクタリングすると、IntelliJ でもすべてが機能するように見えます。私は、Java プログラマーにとって漠然と正気と思われるコールバック関数を配置する方法を考え出しました。コマンドラインで機能した理由はわかりませんが、おそらくnode.jsがスレッド化/非同期処理を処理する方法に問題があります。
この質問全体を削除する必要があるかどうかわかりません。
元の質問は次のとおりです。
私はベテランの Java プログラマーで、Javascript、node.js、またはリクエストの経験はほとんどありません。基本的な HTTP GET (そして最終的には POST) を実行したいと考えています。Mikeal のリクエスト フレームワーク ( https://github.com/mikeal/request ) は合理的に見えます。しかし、応答を変数に取得して解析できるようにする方法がわかりません。彼の例はすべてコンソールに送られます。
私のコードは
var Request = require('request');
var ggg;
Request.get('http://www.google.com', function (error, response, body) {
console.log(body) // Print the google web page.
ggg = body;
});
IntelliJ Webstorm7 デバッガーで実行しています。コールバック内 (ggg = body 行) にブレークポイントを設定しましたが、これは決してトリガーされません。また、記録のために、コンソールも何も記録していません。このコードの後のブレークポイントで、ggg は「未定義」としてリストされます。
これが私の誤解なのか、IntelliJ の奇妙さなのか、それともリクエスト ライブラリが機能しないのかはわかりません。
フォローアップ : 私の intellij の何かが台無しになっていると思います。ノードnameoffile.jsを介してコマンドラインからこのコードを実行すると、うまくいくようです。