GUIDE深度 · Deep dive
cURL 转 fetch/axios 的坑
转换不是逐字替换:浏览器 fetch 受 CORS 限制,Node 的 fetch 不带浏览器 cookie,axios 默认抛非 2xx。生成代码后要补超时、鉴权刷新和错误处理。
差异
浏览器不能随便设置 Host/Cookie/User-Agent。
跨域要服务端 CORS;cURL 不受限。
补全
加 AbortController 超时。
检查 res.ok;401 刷新 token。
常见问题
为什么浏览器请求失败?
多半是 CORS/预检;看 Network 面板。
axios 为什么抛错?
默认非 2xx 抛错;用 validateStatus 调整。