📜  axios之间的node js sleep - Javascript(1)

📅  最后修改于: 2023-12-03 14:59:26.902000             🧑  作者: Mango

Axios之间的Node.js Sleep

在使用Axios进行Node.js HTTP请求时,有时我们需要在请求之间等待一段时间。这可以通过Node.js的内置setTimeout()函数来实现。

setTimeout()函数

setTimeout()函数是Node.js中的一个函数,可用于执行一些代码或函数,在指定的时间后停止执行。

它的语法如下:

setTimeout(callback, milliseconds)

其中,callback是一个函数,将在milliseconds毫秒后执行。可以将函数定义在setTimeout()函数中,也可以将函数定义为匿名函数并在setTimeout()函数中引用。

在Axios请求之间使用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请求。