可以使用Promise.all()方法来处理多个API查询请求,以避免在循环中进行查询。下面是一个示例代码:
// 导入必要的包
const fetch = require('node-fetch');
// 定义查询函数
const queryAPI = (url) => fetch(url)
.then(response => response.json());
// 定义查询列表
const queryList = [
'https://api.bestbuy.com/v1/products/sku=6364253.json',
'https://api.bestbuy.com/v1/products/sku=6364382.json',
'https://api.bestbuy.com/v1/products/sku=6364439.json'
];
// 使用Promise.all()方法查询API
Promise.all(queryList.map(queryAPI))
.then(results => {
// 处理查询结果
console.log(results);
})
.catch(error => console.error(error));
在上面的示例中,定义了一个名为queryAPI
的查询函数,它接受一个API查询URL并返回JSON数据。定义了一个名为queryList
的查询列表,其中包含要查询的API URL。使用Promise.all()
方法来查询每个URL,返回一个包含所有结果的数组。在这里,可以使用.map()
来将查询列表映射到查询函数并传递给Promise.all()
。最后,处理查询结果并在控制台中显示。