Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 节点ntwitter和twitter API限制_Javascript_Node.js_Asynchronous_Twitter - Fatal编程技术网

Javascript 节点ntwitter和twitter API限制

Javascript 节点ntwitter和twitter API限制,javascript,node.js,asynchronous,twitter,Javascript,Node.js,Asynchronous,Twitter,关于API限制的问题,可能是我遗漏了什么,但不确定: 如果我这样做: twit.showUser(ids, function(error, response) { console.log(response) } 其中{ids}是一个数组,长度100时,它失败了 这是基于: 具体来说: 每个请求最多支持100个用户 这是在ntwitter模块中管理的还是我需要在外部管理?若有,对如何管理有何建议 或者,在node ntwitter模块之外,如果我想从showUser()发回所有响应的

关于API限制的问题,可能是我遗漏了什么,但不确定:

如果我这样做:

 twit.showUser(ids, function(error, response) {
   console.log(response)
 }
其中{ids}是一个数组,长度<100,一切正常

当我做同样的操作并且id>100时,它失败了

这是基于:

具体来说:

每个请求最多支持100个用户

这是在ntwitter模块中管理的还是我需要在外部管理?若有,对如何管理有何建议

或者,在node ntwitter模块之外,如果我想从showUser()发回所有响应的复合json,您建议如何以干净的方式解决这个问题

每个请求最多支持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)
 }
}
for(变量i=0;i
(未经测试)


由于它是node.js,您可能希望它是异步的。请签出并重试。

showUser()是异步的,这意味着循环将在从twitter api调用返回响应之前很久完成。这取决于您希望在回调中执行的操作,但这就是为什么我添加了forEachLimit和forEachSeries的链接…谢谢。我想要的基本上是聚合响应对象并将它们发送回客户端。这是确定的为异步库添加一些内容。