📅  最后修改于: 2023-12-03 14:59:26.902000             🧑  作者: Mango
在使用Axios进行Node.js HTTP请求时,有时我们需要在请求之间等待一段时间。这可以通过Node.js的内置setTimeout()
函数来实现。
setTimeout()
函数是Node.js中的一个函数,可用于执行一些代码或函数,在指定的时间后停止执行。
它的语法如下:
setTimeout(callback, milliseconds)
其中,callback
是一个函数,将在milliseconds
毫秒后执行。可以将函数定义在setTimeout()
函数中,也可以将函数定义为匿名函数并在setTimeout()
函数中引用。
在Axios请求之间使用setTimeout()
函数可以让我们的代码等待一段时间,从而避免过多的HTTP请求。例如,如果我们要每隔5秒向服务器发送HTTP请求,则可以使用以下代码:
const axios = require('axios');
async function getRequest() {
try {
const response = await axios.get('https://jsonplaceholder.typicode.com/posts/1');
console.log(response.data);
} catch (error) {
console.error(error);
}
}
async function sendRequests() {
while (true) {
await getRequest();
await new Promise(resolve => setTimeout(resolve, 5000));
}
}
sendRequests();
在上面的代码中,sendRequests()
函数会在无限循环中调用getRequest()
函数,并在每次请求结束后等待5秒,以避免向服务器发出过多的请求。
在Node.js中使用setTimeout()
函数可以让我们的代码等待一段时间,从而控制我们的HTTP请求。结合Axios,我们可以更好地控制我们的请求,并避免过多的HTTP请求。