用get请求需要登录的页面,未登录情况后端会进行302跳转
用request可以设置followRedirect: false不进行302跳转,axios要怎么设置啊?我想获取302的headers
用get请求需要登录的页面,未登录情况后端会进行302跳转
用request可以设置followRedirect: false不进行302跳转,axios要怎么设置啊?我想获取302的headers
5 回答4.9k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
纯靠 axios 无法拦截。
楼上 @腹中有书气自华 说的
maxRedirects
配置是针对 Node 环境的,浏览器环境下无效。因为 axios 底层依赖的是
XMLHttpRequest
来实现的 AJAX,但它对 3XX 重定向是由浏览器自动进行的,开发者无法覆写这个结果。而 ES6 中新增的fetch
原生 API 反倒可以实现拦截 3XX,但可惜的是 axios 出于兼容性考虑底层并没有采用fetch
。所以解决方案有这么几种:
fetch
请求一次,然后再走 axios。缺点是不再兼容 IE11 以下版本。