nodejs-async等待一个变量中的所有数据



我想检查域名是否在垃圾邮件列表中。

const dnsbl = require('dnsbl');

const spam1 = await dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org');

const spam2 = await dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org', {includeTxt: true});
const spam3 = ...

我想查看30个垃圾邮件网站。我现在必须制作30个变量吗,比如spam4,spam5,spam6?或者有更有效的方法吗?

如何保存变量中的所有结果?

以下代码并行执行所有30个方法,并返回30个结果(仅当所有30个promise都成功执行时(。

const dnsbl = require('dnsbl');
(async () => {
const promiseArr = [
dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org'),
dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org'),
dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org'),
dnsbl.lookup('127.0.0.2', 'zen.spamhaus.org'),
...,
...,
];
let results;
try {
results = await Promise.all(promiseArr);
} catch (e) {
console.log(e);
}
})();

最新更新