我不断收到错误:句柄已在运行!看起来数组项并没有互相等待。我该如何解决这个问题?
const curl = new(require('curl-request'))();
sites = ["disney.com", "surfline.com", "oregon.com", "addiction.com", "www.google.com", "captaindonsfishing.com", "www.surfline.com", "facebook.com", "clevelandclinic.com"];
sites.forEach(function(site) {
console.log(site);
curl.get('https://' + site)
.then(({statusCode}) => {
console.log(site+" "+statusCode);
}).catch((e) => {
console.log(site+" "+e);
});
});
输出:
surfline.com 错误:句柄已在运行!
oregon.com 错误:句柄已在运行!
addiction.com 错误:句柄已在运行!
www.google.com 错误:句柄已在运行!
captaindonsfishing.com 错误:句柄已在运行!
www.surfline.com 错误:句柄已在运行!
facebook.com 错误:句柄已在运行!
clevelandclinic.com 错误:句柄已在运行!
disney.com [对象参数]
最佳答案
我认为在第一个请求完成之前,您不能使用相同的 curl
对象发送第二个请求。如果要发送多个并发请求,则需要创建多个对象。
const CurlRequest = require('curl-request');
sites.forEach(site => {
console.log(site);
const curl = new CurlRequest;
curl.get('https://' + site).then(...);
});
关于javascript - 为什么我的代码给我错误: Handle already running?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54207212/