Axios请求遭CORS拦截并报503错误:是否为请求配置问题?
问题分析与解答
核心结论
问题根源既不是Axios请求配置,也不是服务器端CORS设置,而是你的后端服务返回了503 服务不可用状态码。
具体分析
- 从网络请求信息可见,请求的状态码是503,这意味着后端服务当前无法处理请求,根本没执行到你的CORS配置逻辑,自然不会返回
Access-Control-Allow-Origin这类CORS响应头,浏览器因此抛出CORS相关错误。 - 你的后端CORS配置本身没有明显问题:指定了正确的前端域名
https://site.herokuapp.com、开启了credentials: true、允许了GET等必要请求方法,只要服务正常响应,应该能返回符合要求的CORS头。 - Axios代码里的
url字段只写了"site-backend.herokuapp.com",缺少协议头(https://),不过实际请求已经补全了协议和路径/userData,这不是当前报错的核心原因,但建议统一补全协议避免解析问题。
解决建议
- 优先排查后端服务返回503的原因:查看Heroku应用的日志,检查是否存在服务启动失败、资源耗尽、代码报错等情况,确保后端服务能正常处理请求。
- 待后端服务恢复正常后,再验证CORS配置是否生效。
- 规范Axios的请求URL,补全
https://前缀,例如:url: "https://site-backend.herokuapp.com/userData"
内容的提问来源于stack exchange,提问作者AndrewLeonardi
相关产品推荐
相关产品推荐

