以下是一个按顺序执行axios请求并处理失败的代码示例:
const axios = require('axios');
const urls = ['url1', 'url2', 'url3']; // 替换为实际的URL数组
function makeRequest(url) {
return axios.get(url)
.then(response => {
console.log('请求成功:', response.data);
// 如果请求成功,则退出
process.exit(0);
})
.catch(error => {
console.error('请求失败:', error.message);
// 如果还有剩余的URL,则尝试下一个
if (urls.length > 0) {
const nextUrl = urls.shift();
console.log('尝试下一个URL:', nextUrl);
makeRequest(nextUrl);
} else {
// 如果没有剩余的URL,则退出
console.error('所有请求失败');
process.exit(1);
}
});
}
// 开始执行第一个请求
const firstUrl = urls.shift();
console.log('开始执行第一个请求:', firstUrl);
makeRequest(firstUrl);
这个示例中,我们首先定义了一个URL数组,并创建了一个makeRequest
函数来执行每个请求。在这个函数中,我们使用axios发送GET请求,并通过.then
处理成功的响应和.catch
处理失败的情况。
如果请求成功,我们将打印响应数据,并使用process.exit(0)
退出程序。
如果请求失败,我们将打印错误消息,并检查是否还有剩余的URL。如果还有剩余的URL,则使用urls.shift()
从数组中获取下一个URL,并调用makeRequest
函数来执行下一个请求。如果没有剩余的URL,则打印错误消息,并使用process.exit(1)
退出程序。
最后,我们通过调用makeRequest
函数来开始执行第一个请求,并传递第一个URL作为参数。
上一篇:按顺序粘贴列名