我使用Node.js的ntwitter模块访问Twitter的流API从流星内部应用程序,而是试图插入回调函数内收集应用程序崩溃时:异步回调
twitter.stream('statuses/filter', {'track':'whatever'}, function(stream) {
stream.on('data', function (data) {
//logging the data coming back works fine
console.log(data);
//the next line throws "Error: Meteor code must always run within a Fiber"
Tweets.insert(data);
});
});
在Meteors线性执行模型的上下文中是否有推荐的方法来使用异步回调?我尝试在一个新的光纤内包裹插入,这似乎工作,但我不确定它可能有任何影响。
我发现这个http://gist.io/3443021这是有益的,但我仍然不确定哪种方法适合我的特殊情况,所以任何帮助将不胜感激。
干杯
虽然这将工作,在我的情况下,它会有点否定具有实时流数据的点,因为我使用流api而不必轮询第一个地方 – jul
轮询在哪里?这与之前的回调相同。轮询不在Twitter流上,它位于内存缓冲区中,这不过是快速查询,而不是Twitter的投票。 –
好吧,我不需要以某种间隔轮询数组吗?如果可能,我宁愿实时更新集合。 – jul