问题描述
我想定期从 API 获取数据。我写了一个成功获取数据的脚本,但是如何无限时间重复此步骤,以便我可以定期获取数据。
我想以1秒的间隔取数据,我该怎么做?
const fetch = require('node-fetch')
const time = new Date()
function saveData(metrics) {
console.log(time.getSeconds())
console.log(metrics)
console.log(time.getSeconds())
}
const getData = () => {
fetch('http://example.com/api/v1')
.then(response => response.json())
.then(saveData)
.catch(err => console.error(err))
}
getData()
解决方法
就这样使用它
const interval = setInterval(() => {
getData();
},1000);
如果你想避免像上面那样进行包装回调,你可以将 getData 作为回调传递, setInterval 将在每个指定的间隔时间后调用,即这里的 1 秒
const interval = setInterval(getData,1000);