2012-10-17 42 views
0

相關的API限制問題,這可能是一件我只是失蹤,不知道雖然:節點ntwitter和Twitter API限制一個

如果我這樣做:

twit.showUser(ids, function(error, response) { 
    console.log(response) 
} 

其中{IDS }是一個數組,長度爲< 100,一切都很好。

當我這樣做,ID> 100時,它失敗。

這是基於: https://dev.twitter.com/docs/api/1.1/get/users/lookup

而具體:

爲每個請求

最多100個用戶是這個莫名其妙的ntwitter模塊管理或做我需要管理這外面?如果是這樣的話,關於如何管理的建議?

或者,在node-ntwitter模塊外部,如果我想從showUser()發回所有響應的複合json,您會如何以乾淨的方式解決此問題?

回答

0

爲每個請求最多100個用戶

意味着你只能在一個時間要求100點的ID。您可以增加100運行一個for循環:

for(var i = 0; i < ids.length; i + 100) { 
    requestIds = ids.slice(i, i+99) 
    twit.showUser(requestIds, function(error, response) { 
    console.log(response) 
} 
} 

(未經測試)

由於這是Node.js的,你可能希望它是異步的。請查看forEachLimitforEachSeries

+0

showUser()是異步的,這意味着在響應從twitter api調用返回之前,循環將會很長。 –

+0

取決於你想要在回調中做什麼,但這就是爲什麼我添加forEachLimit和forEachSeries的鏈接... – Patrick

+0

謝謝。我想要的基本上是聚合響應對象並將它們發送回客戶端。 –