2016-11-04 7 views
0

私は最初のNodeアプリケーションを構築中です。unirest.getリクエストに問題があります。私のプロジェクトはNode、Express、Node、Act on APIを使ってビルドされています。Unirest Nodeからレスポンスを送信するリクエスト機能をJadeビューに取得

私はexpress generatorを使用して、すぐに地面のプロジェクトを取得しています。

私が経験している問題は、私のルートファイルに応答するために苦労していることです。私はログオン時にコンソールで応答を見ることができるが、テンプレートにデータを渡すことができないため、Act On APIのリストを要求しています。

function getTheList(callback) { 
var Request = unirest.get('https://restapi.actonsoftware.com/api/1/list/l-0001') 
.headers({ 
    'Accept': 'application/json', 
    'Authorization': 'Bearer ' + access_token 
}) 
.query({ 
    "count": 20, 
    "fields": "First Name;Last Name;Email;" 
}) 
.end(function(response, error) { 
    var data = response.body.data; 
    if (!error && response.statusCode == 200) { 
     callback(returnData(data)); 
    } else { 
     console.log('Failed response'); 
    } 
}); 
} 

function returnData(theData){ 
    console.log(theData); 
    return theData; 
} 

module.exports.get = getTheList; 

この情報を取得するために私のルートファイル内のコード。

私が間違っていることについて助力があれば幸いです。

答えて

0

は、masterList.get()のように呼び出すと提供しないコールバックを想定しています。わずかの距離完全にコールバックしてくださいgetTheList実装では、

masterList.get(function(data){ 
    //you can access data here. 
}) 

または:

だからあなたのような何かを行うことができます。

.end(function(response, error) { 
    var data = response.body.data; 
    if (!error && response.statusCode == 200) { 
     returnData(data); //Just do this may be. 
    } else { 
     console.log('Failed response'); 
    } 
}); 
+0

ありがとうございました。あなたの最初の解決策は私の問題を完全に解決しました。私の問題はgetTheList()関数が私のルートファイル内で呼び出す場所ではないと思っていました! – nickjephson

関連する問題