2011-08-01 6 views
2

FacebookのAPIに友人のリストを要求しています。 node.jsでリクエストを行うと、リクエストは常に切り捨てられます。応答が切り捨てられている理由を誰かが理解していますか?ここでnode.jsの応答が切り捨てられる理由

は私の関数のコードです:

var loadFriends; 
loadFriends = function(access_token, callback) { 
    var https, options, start; 
    https = require('https'); 
    start = new Date(); 
    options = { 
    host: 'graph.facebook.com', 
    port: 443, 
    path: '/me/friends?access_token=' + access_token 
    }; 
    return https.get(options, function(res) { 
    console.log("Request took:", new Date() - start, "ms"); 
    res.setEncoding("utf8"); 
    return res.on("data", function(responseData) { 
     var data; 
     console.log(responseData); 
     data = JSON.parse(responseData); 
     return callback(data); 
    }); 
    }); 
}; 
+0

これではJavaScript/Node.jsのではないとして、あなたが使用している言語やフレームワークでこれをタグ付けしてください。 –

+0

私はそれをcoffeescriptからjavascriptに変換し、それを適切にタグ付けしました。 –

答えて

4

データのチャンクが到着するようres.on('data')イベントが複数回発生します。これを連結して全体の応答を得る必要があります。

http://nodejs.org/docs/v0.4.0/api/http.html#event_data_

+2

「finish」イベントがトリガーされたときにデータが到着したことを知っています。これは、完全なデータを必要とするコールバックを呼び出す必要があるときです。 –

関連する問題