调试 Axios 请求(Chrome DevTools)
在前端开发中,调试 Axios 请求是定位接口问题的关键步骤。Chrome DevTools 提供了丰富的工具帮助开发者快速分析请求与响应。
一、打开 Network 面板
- 按
F12或右键 → “检查” 打开 DevTools。 - 切换到 Network 标签。
- 确保左上角 Preserve log 勾选,以保留页面刷新后的请求记录。
- 在 XHR/Fetch 过滤器中查看 Axios 发出的请求。
二、查看请求详情
点击某条请求,可查看以下信息:
- Headers:请求 URL、方法、请求头(Headers)、请求体(Payload)
- Preview / Response:响应内容,JSON 格式可展开查看
- Timing:DNS 查询、TCP 连接、请求等待和下载耗时
- Cookies:请求和响应的 Cookie 信息
示例:
axios.get('/api/user', { params: { id: 123 } })
.then(res => console.log(res.data))
.catch(err => console.error(err));
在 Network 面板可看到 GET /api/user?id=123 请求及响应数据。
三、模拟网络环境
在 Network → Throttling 中可以模拟:
- 慢速 3G / 2G
- 离线模式(Offline)
- 自定义网络速度
帮助调试请求超时、网络异常和重试策略。
四、XHR / Fetch 断点调试
- 切换到 Sources → XHR/fetch Breakpoints。
- 勾选“所有请求”或指定 URL 断点。
- 当 Axios 请求触发时,浏览器会自动暂停在发起请求的位置,方便调试请求参数和响应处理。
五、Console 面板配合调试
使用 console.log 输出请求配置和响应数据:
axios.get('/api/data')
.then(res => {
console.log('请求成功:', res);
})
.catch(err => {
console.error('请求失败:', err);
});
结合 DevTools Console 与 Network 面板,可快速分析问题。
六、调试跨域请求
- 查看
Access-Control-Allow-Origin是否正确返回。 - 查看 OPTIONS 预检请求是否成功。
- Network 面板可区分 Request vs Preflight Request。
七、调试请求重试逻辑
- 在拦截器或封装函数中加
console.log输出重试次数。 - 在 Network 面板观察多次请求发起情况。
- 可模拟网络中断测试重试策略。
八、小结
通过 Chrome DevTools 可以全面调试 Axios 请求,包括:
- 请求 URL、方法、参数、Headers
- 响应内容和状态
- 网络耗时和断点调试
- 跨域与预检请求分析
- 网络模拟与请求重试验证
熟练使用 DevTools 可以大幅提升前端接口调试效率和定位问题能力。
相关内容
- 缓存与重复请求优化 本章节介绍如何在前端项目中使用 Axios 优化请求缓存与防止重复请求,包括浏览器缓存、内存缓存、请求去重策略、拦截器结合缓存、缓存过期处理等方法,帮助提高接口...
- 前端容错与兜底策略 本章节讲解如何在前端使用 Axios 实现容错与兜底策略,包括请求失败处理、默认数据返回、全局错误提示、降级方案、备用接口调用等方法,确保应用在网络异常或接口异...
- 接口统一管理与类型定义 本章节介绍如何在前端项目中使用 Axios 统一管理接口请求,包括接口模块化、统一封装、请求类型定义、TypeScript 类型约束、接口文档维护及调用规范化。...
- 取消请求(CancelToken 与 AbortController) 本章节讲解如何在 Axios 中取消请求,包括使用 CancelToken 和 AbortController 两种方式,适用于用户快速切换页面或重复请求时,防...
- 同时发送多个请求(axios.all / axios.spread) 本章节讲解如何使用 Axios 同时发送多个请求,包括 axios.all 和 axios.spread 的使用方法,帮助前端项目高效处理并发请求,提高数据获取...
- 防止重复请求的策略 本章节讲解如何在 Axios 中防止重复请求,包括使用请求标识、拦截器和节流/防抖机制,避免用户多次触发同一接口导致的冗余请求,提高前端性能和接口稳定性。