对FB和G +计数端点的批量异步调用失败

时间:2015-04-02 16:19:12

标签: node.js facebook-graph-api asynchronous sails.js

我的应用程序有一个控制器,可输出各种页面的社交总数:http://pastebin.com/MLBTb3mi

..当我一次拨打几个电话时它工作正常,但是当有一个1000个网址的网站并且我想要更新每个网址的社交计数时,它会在达到音量时中断异步调用 - 特别是g +和fb break。这是我对fb图形ID调用的响应得到的控制台错误(这是'正文'响应 - 请参考控制器的第74行:http://pastebin.com/MLBTb3mi

facebook body is {"id":"970371719648388","created_time":"2015-04-02T07:43:09+0000","is_scrap
ed":false,"type":"website","updated_time":"2015-04-02T07:43:09+0000","url":"http:\/\/www.zappos.com\/womens-clothing\/"}
facebook result is undefined

有谁知道如何解决这个问题并使控制器顺利运行?

我尝试使用sharedcount.com进行批量通话,我可以毫无问题地进行数千次同时通话。如何在不使用sharedcount等外部服务的情况下编写控制器来处理此类批量操作?

1 个答案:

答案 0 :(得分:1)

您应该检查响应的状态代码。我的猜测是你得到了速度限制。有关详细信息,请参阅Facebook page on rate-limiting;它没有讨论阻止你的内容的具体数字,但它提供了有关要查找的内容的详细信息,以表明您已受到限制。解决方案是限制你的请求,以免他们走得太快;你可以使用像Lodash's _.throttle这样简单的东西。