Axios可以检测重定向,可以使用axios库中的maxRedirects选项来设置重定向的最大次数。默认情况下,maxRedirects的值为5。当重定向超过最大次数时,Axios会抛出一个错误。
以下是一个使用Axios检测重定向的代码示例:
const axios = require('axios');
axios.get('http://example.com', { maxRedirects: 5 })
.then(response => {
// 处理响应数据
console.log(response.data);
})
.catch(error => {
if (error.response) {
// 请求发出后服务器响应的状态码不是 2xx
console.log('Error status:', error.response.status);
} else if (error.request) {
// 请求发出但没有收到响应
console.log('No response received');
} else {
// 发生了错误,请求没有发出
console.log('Error:', error.message);
}
});
在上面的示例中,我们使用axios.get方法发送一个GET请求到http://example.com。通过将maxRedirects选项设置为5,我们告诉Axios最多允许5次重定向。如果超过5次重定向,Axios会抛出一个错误,并将其捕获在.catch块中进行处理。
注意:在浏览器环境中,Axios默认会自动处理重定向,不需要显式设置maxRedirects选项。