gpt4 book ai didi

javascript - 在每次迭代中执行超时的 async.series 的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 16:59:41 24 4
gpt4 key购买 nike

由于第三方 API 的限制,我需要在 async.eachSeries 调用的迭代之间等待一秒钟,该 API 通过限制调用者每秒发出多个请求来防止滥用。

我不太清楚如何做到这一点。我可以简单地将系列callback 作为参数函数传递给setTimeout 调用吗?我怀疑这行不通,但我想在组装测试它所需的所有代码之前先问一下。如果 setTimeout 不是答案,那么我的替代方案是什么?

最佳答案

是的,setTimeout() 可用于在通常调用 callback() 的地方添加延迟。

// vs. callback();
setTimeout(callback, 1000);

任何传递给callback()的参数都可以是passed after the timeout's delay .

// vs. callback(err);
setTimeout(callback, 1000, err);

// vs. callback(err, result);
setTimeout(callback, 1000, err, result);

示例:

async.eachSeries([1, 2, 3], function (n, callback) {
request3rdPartyAPI(n, function (err, result) {
setTimeout(callback, 1000, err);
});
});

关于javascript - 在每次迭代中执行超时的 async.series 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25857526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com