2014-03-03 23 views
-1

我正在使用Zoopla開發人員API獲取一些歷史定價數據。nodejs - 如何處理返回循環結構的API JSON

我的HTTP GET方法如下

http.get(url, function(err, data) { 
    if (err) console.log(err); 
    res.send(data); 
}); 

我得到TypeError: Converting circular structure to JSON嘗試使用上述方法時。

任何想法如何解決這個問題?

+0

我從第三方API獲取數據,因此具有比什麼格式我得到的數據 – dopplesoldner

+0

你不能原生JSON對象的控制。使用響應... – dandavis

回答

2

http.get的第二個參數是而不是的數據對象。這是一個響應對象。

你應該做這樣的事情,而不是:

http.get(url, function(err, response) { 
    if (err) console.log(err) 

    var data = '' 
    response.setEncoding('utf8') 
    response.on('data', function(d) { 
    data += d 
    }) 
    response.on('end', function(d) { 
    res.send(data) 
    }) 
}) 
+0

或簡單地'response.pipe(res)' – vkurchatkin

+0

我假設他想在他返回數據之後做一些預處理,因爲它很少有意義返回未修改的數據。在這種情況下,緩衝是最簡單的解決方案。 – alex

+0

謝謝,是的問題是我混淆了http.get的參數 – dopplesoldner