2016-09-12 8 views
0

私のアプリケーションはlocalhost:8080で動作し、node expressはlocalhost:8081上で動作しています。リクエストを行うにはnode.jsから簡略化されたHTTPクライアント?

私のタスクは、このノード特急ミドルウェアによって読み取られ、ローカルホスト上でヒット1つの以上の要求作る取得する必要があります

localhost:8080/autoSearch 

を言って、特定のURLがヒットしたときにということである:それは返す場合、8080/logusercheck真の別のコールを取得するために作ります結果。

は "localhost:8080/logusercheckユーザーがログインしている場合はtrueを返し、" 同じ

は、サーバーとノードのエントリポイントで

ProxyPass "/autoSearch" "http://localhost:8081/autolink" ttl=120 ProxyPassReverse /autoSearch http://localhost:8081/autolink 

として追加されたエントリにXAMPインストール達成するために

var express = require('express'); 
var app = express(); 
var port = 8081; 

var request = require('request'); 
app.get('/autolink', function (req, res) { 

    /*Whether user is logged in or not logged --> localhost:8080*/ 
    request('/logusercheck',function(error, response, body){ 
    console.log(response); 
    console.log(error); 
    console.log(body); 
     if (!error && response.statusCode == 200) { 
      res.send('Searching'); 
     }else{ 
      res.send('you are not logged in'); 
     } 
    }); 


}); 




app.listen(port,function(err,res){ 
    if(err){ 
     console.log('server error'); 
    }else{ 
     console.log('Express Started'); 
    } 
}); 

console.log('server started'); 

これは常に「あなたはログインしていません」と返信しています

私はここをかけてやって何が悪い

reponse undefined 
error [Error: Invalid URI "/logusercheck"] 
body undefined 

慰めます。

答えて

1

requestは、完全なURLを渡す必要があります:

request('http://localhost:8080/logusercheck', ...); 
+0

は、それが設定可能にする方法はありますか? –

+0

はい、それはどのように正確に設定できるか(環境変数、コマンドライン引数、rcファイルなど)によって異なります。 – robertklep

+0

あなたはそれらの中で最高のものを選ぶために私にいくつかの参照を提供することができます –

関連する問題