You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel项目内部AJAX请求返回status 0问题求助

解答

嘿,这个问题我之前也碰到过!其实不是CORS的锅,是你AJAX请求的URL格式写错了,导致浏览器解析出了错误的请求地址。

问题出在哪?

你写的localhost:8000/api/partners没有加协议前缀(http://或https://),浏览器会把它当成当前页面路径下的相对地址。举个例子,如果你的后台页面是http://localhost:8000/admin/dashboard,浏览器实际会请求http://localhost:8000/admin/localhost:8000/api/partners——这个地址显然不存在,所以请求直接失败,返回status 0。

怎么修复?

有两种简单的修正方式:

  1. 使用完整的绝对路径:
    在URL前加上协议前缀,确保浏览器能正确识别域名:

    url: "http://localhost:8000/api/partners"
    
  2. 使用根相对路径(更推荐):
    因为API和后台同域,直接用斜杠开头的相对路径,浏览器会自动拼接当前页面的协议、域名和端口:

    url: "/api/partners"
    

    这种方式更灵活,后续部署到生产环境时不用修改地址。

额外的排查建议

  • 打开浏览器开发者工具(F12)的Network标签,查看这个AJAX请求的Request URL,确认是不是和预期一致。
  • 检查请求头里的Authorization是否正确携带了Token,避免Token过期或格式错误(比如Bearer后面有没有空格)。
  • 看看Laravel的日志文件(storage/logs/laravel.log),有没有相关的错误提示,比如路由不存在、权限验证失败等。

按照上面的方法修改后,你的请求应该就能正常返回数据啦!

内容的提问来源于stack exchange,提问作者JacopoStanchi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:03:07