[英]Meteor - Server-side API call and insert into mongodb every minute
我正在學習Meteor,同時嘗試使用TwitchTV API。
我現在的目標是每分鍾調用TwitchAPI,然后將json對象的一部分插入mongo數據庫。 由於MongoDB在_id
匹配並且Twitch使用_id
作為其鍵,因此我希望后續插入將更新現有記錄,或者如果_id
不存在則創建一個新記錄。
調用和插入(至少是最初的調用)似乎工作正常。 但是,我似乎無法使Meteor.setTimeout()
函數正常工作。 我啟動應用程序時會發生通話,但不會每分鍾持續發生一次。
這是我在.js
。 我的服務器文件夾中的文件:
Meteor.methods({
getStreams: function() {
this.unblock();
var url = 'https://api.twitch.tv/kraken/streams?limit=3';
return Meteor.http.get(url);
},
saveStreams: function() {
Meteor.call('getStreams', function(err, res) {
var data = res.data;
Test.insert(data);
}
}
});
Deps.autorun(function(){
Meteor.setTimeout(function(){Meteor.call('saveStreams');}, 1000);
});
任何幫助或建議,不勝感激。
我進行了@richsilv和@saimeunt提到的更改,並且它起作用了。 結果代碼:
Meteor.startup(function(){
Meteor.setInterval(function(){Meteor.call('saveStreams');}, 1000);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.