2011-08-01 69 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

爲了完成這個想法:您知道數據在觸發'end'事件時完成。這是你應該調用任何需要完整數據的回調函數。 –

相關問題