LARAVEL报错:'<', "<!DOCTYPE "... 不是有效JSON,求解决方案
Laravel 报错 '<', "<!DOCTYPE "... is not valid JSON 解决方法
这个错误本质是后端返回了HTML内容(比如错误页面),但前端期望解析JSON格式数据,和浏览器设置无关,按以下步骤排查:
- 用浏览器F12打开「开发者工具」,切换到Network标签,找到触发错误的请求,查看Response面板的内容,你会发现返回的是带<!DOCTYPE>的HTML页面(大概率是Laravel的404/500/403错误页)。
- 核对请求的URL和HTTP方法:确认前端请求的地址、请求方式(GET/POST/PUT等)和Laravel路由定义完全匹配,路由方法不匹配会直接返回404 HTML页面。
- 检查控制器返回逻辑:确保接口对应的控制器方法是用
return response()->json(...)返回JSON,而不是误写了return view(...)返回视图页面。 - 查看Laravel日志:去项目的
storage/logs目录下打开最新的日志文件,里面会记录后端报错的具体原因(比如数据库连接失败、代码语法错误、权限不足),这些都会导致返回错误HTML页面。 - 验证CSRF令牌:如果是POST/PUT/DELETE请求,要确保请求头里携带了
X-CSRF-TOKEN(值取页面里的csrf-token meta标签),或者表单里包含_csrf字段,否则Laravel会返回403的HTML页面。

内容的提问来源于stack exchange,提问作者UndecoDE
相关产品推荐
相关产品推荐

