我有我的Node.js應用程序使用Fixer.io API獲取一些數據。目前該電話是在我到達URL myapp/rate
時進行的。我的目標是每天兩次自動進行此調用,以將數據存儲在我的MongoDB數據庫中。定期(每天兩次)從Node.js調用API獲取數據的最佳方式
所以我想知道什麼是最好的方法來做到這一點?也許setInterval()
是做,但我不這麼認爲的唯一途徑...
我的電話是這樣的:
router.get('/', (req, res, next) => {
fixer.latest({ base: 'EUR', symbols: ['CAD'] })
.then((data) => {
var currentData = data.rates;
if (currentData) {
const currentRate = new Rate({ rate: currentData.CAD });
currentRate.save((err) => {
if (err) {
throw err;
} else {
console.log('Data saved successfully!');
}
});
}
})
.then(() => {
Rate.find({}, { rate: 1, _id: 0 }, (err, rates) => {
if (err) {
throw err;
} else {
res.json(rates);
}
});
})
.catch(() => {
console.log('Error');
});
});
感謝的
腳本自動運行在特定時間的最佳方式是使用cronjobs。你有訪問他們嗎? –
@ObsidianAge當然,我可以用cronjobs做到這一點,但我想知道在我的代碼應用程序中是否有其他方式是正確的? –