所以我使用codebird-js与JavaScript中的twitter API进行交互,但是在特定时间api提取的推文的限制是100.因此,我需要连续调用API但是需要更改“max_id”参数可以移动时间范围并获得接下来的10条推文。
我的问题是我正在存储针对阵列中特定帐户的推文,因为这些是我唯一关心的,但代码会在数组完全填充for循环之前继续。我曾试图使用承诺和回调,但我无法以我想要的方式工作。我最近的尝试是当/然后使用jquery时,但它仍然提供与我的其他尝试相同的结果。下面是一些代码尝试我尝试只打印数组的第一个元素,它总是出现未定义。我知道数组正在创建,因为如果我只是打印数组,JS控制台会显示它已填充。感谢您提出任何建议!
actualReplies = []
var params = {
to:"someTwitterHandle",
count:100,
result_type:"popular"
}
$.when(
cb.__call(
"search_tweets",
params,
function (reply){
for(var i=0; i<reply.statuses.length; i++){
if(reply.statuses[i].in_reply_to_status_id_str == tweetId){
actualReplies.push(reply.statuses[i])
}
}
recent = reply.statuses[reply.statuses.length-1].id_str
}
)).then( function(){
console.log(actualReplies[0])
})