【发布时间】:2014-01-21 15:02:56
【问题描述】:
我在流星中使用 RSS 解析器时遇到了问题。这是一个异步调用,所以它不需要被包装,但它似乎仍然不起作用。我认为这是因为匿名 on('readable' 函数在光纤之外,但我看不到如何解决它。
var FeedParser = Meteor.require('feedparser');
var request = Meteor.require('request');
function getBlog(url, parameter, id){
request(parameter)
.on('error', function (error) {
console.error(error);
})
.pipe(new FeedParser())
.on('error', function (error) {
console.error(error);
})
.on('readable', function () {
var stream = this,
item;
while (item = stream.read()) {
Items.insert(new_item);
}
});
}
var wrappedGetBlog = Meteor._wrapAsync(getBlog);
Meteor.methods({
blog: function (url, parameter, id) {
console.log('parsing blog');
var items = wrappedGetBlog(url, parameter, id);
}
});
【问题讨论】:
标签: meteor event-loop