nodejs 设置并发请求代码
以下是一个简单的 Node.js 代码示例,可以设置并发请求:
const https = require('https');
const urls = [
'https://example.com/1',
'https://example.com/2',
'https://example.com/3',
'https://example.com/4',
'https://example.com/5'
];
const maxConcurrentRequests = 3;
let currentRequests = 0;
function makeRequest(url) {
console.log('Making request to', url);
https.get(url, (res) => {
res.on('data', (data) => {
console.log(`Received data from ${url}: ${data.toString()}`);
});
res.on('end', () => {
console.log(`Finished request to ${url}`);
currentRequests--;
if (urls.length > 0) {
makeRequest(urls.shift());
}
});
}).on('error', (err) => {
console.error(`Error making request to ${url}: ${err.message}`);
});
}
for (let i = 0; i < maxConcurrentRequests; i++) {
if (urls.length > 0) {
makeRequest(urls.shift());
currentRequests++;
}
}
这个代码示例使用了一个 urls 数组来存储要请求的 URL。maxConcurrentRequests 变量定义了最大并发请求数。在 makeRequest 函数中,我们使用了 Node.js 的 https 模块来发起请求。在请求结束后,我们递归调用 makeRequest 函数来发起下一个请求。同时,我们使用了 currentRequests 变量来记录当前正在进行的请求数量,以确保不会超过最大并发请求数量。
原文地址: https://www.cveoy.top/t/topic/bLna 著作权归作者所有。请勿转载和采集!