2016-12-20 13 views
2

私はnode.jsを使い慣れていますので、ここで問題を説明していきます。いずれかの認証が必要な場合は教えてください。Node.jsアプリはGETリクエストから空の応答を受け取ります

私のnode.jsアプリケーションでは、コード(これはAPIへの最初の呼び出しの応答から受け取ったものです)を取得し、別の要求(GET要求)を行うコードを使用していますAPIサービス。最初のコールのコールバックURLは/passです。しかし、私はempty responseをこの2番目の呼び出しのサービスから得ました。

私の理解では、最初の呼び出しからコールバックした後、app.get('/pass', function (req, res)..の関数が呼び出され、GET要求が送信されます。私はここで間違って何をしていますか?事前に多くの感謝!ここで

は私がNode.jsのサーバーからのGETリクエストを作成し、空の応答を受信しよう一部です:

app.get('/pass', function (req, res){ 

    var options = { 
     url: 'https://the url that I make GET request to', 
     method: 'GET', 
     headers: { 
      'authorization_code': code, 
      'Customer-Id':'someID', 
      'Customer-Secret':'somePassword' 
     } 
    }; 

    request(options, function(err, res, body) { 
     console.log(res); 
    }); 
}); 
+0

「エラー」には何かがありますか? – taylorc93

+0

それは 'ERR_EMPTY_RESPONSE'と書いてあります。 – user4046073

答えて

2

イム少し混乱あなただけの何をカバーしようとするので、病気に求めているものに私はあなたが探していると思う。

app.get('/pass', (req, res) => { 
    res.send("hello!");  // localhost:port/pass will return hello 
}) 

/passエンドポイントが呼び出されたときにリクエストライブラリからget要求を呼び出そうとしている場合でも、同様の状態になります。まず、私はあなたが 'メソッド'を削除することができると思う: '必要なものではないので、キーと値を取得'。これで、コードは応答を除いてほとんど前と同じになります。

app.get('/pass', (req, res) => { 
    var options = { 
     url: 'https://the url that I make GET request to', 
     headers: { 
      'authorization_code': code, 
      'Customer-Id':'someID', 
      'Customer-Secret':'somePassword' 
     } 
    }; 

    request(options, function(err, res, body) { 
    // may need to JSONparse the body before sending depending on what is to be expected. 
     res.send(body); // this sends the data back 
    }); 
}); 
+0

ありがとう@ reedb89' app.get( '/ pass'、(req、res) 'について、前の呼び出しからのコールバックURLです。最初の呼び出しでは、私のブラウザはlocalhost:8080/pass?code = xyz ....に行き、この 'app.get( '/ pass'、(req、res)')で2番目の呼び出しを作成しようとしました。あなたの答えの中のres.send(body)は2番目の呼び出しからのresですと思います?なぜ私はデータを返す必要があるのか​​分かりません。 – user4046073

+0

2番目のresから何としたいか私は最初にそれを見て、それからいくつかの値を取得したいと思っています。それはコンソールにログオンしようとした理由です。 – user4046073

+0

は、console.log(body)はあなたが探しているものを与えますか? – reedb89

関連する問題