我有一个站点,比如example.com
我有一个ID数组,可以对应于网站上的原始JSON。
我可以通过example.com/<name>/<id>
请求
问题是,我的身份证数量超过了100个。因此,我不得不提出100多个HTTPs请求。我不认为网站可以让我做example.com/<name>?ids=[ids]
(插入ID数组作为组件(。有没有一种方法可以优化它?
我正在使用Node。JS,HTTPS模块。
您可以将整个列表拆分为块(假设长度为5(,并并行发出该块中的所有请求。这样,您可以优化发出所有请求所需的时间,同时通过并行发出所有请求来避免网站过载。
// this is `chunk` function from `lodash` package
const idChunks = _.chunk(ids, 5);
for (const idChunk of idChunks) {
// I'm using axios here only for the demonstration purposes
const results = await Promise.all(idChunk.map(id => axios.get(`example.com/<name>/${id}`)))
...
// processing results
}