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

Laravel 8 集成 FullCalendar 5 无法加载事件问题求助

解决Laravel 8 + FullCalendar 5 事件加载JSON解析失败问题

以下是针对你问题的具体解决思路:

  • 使用完整路由URL,避免相对路径错误
    你当前events: 'getEvents'用的是相对路径,这会导致请求URL依赖当前页面路径,大概率指向了错误地址。在Blade模板里,用Laravel的route()辅助函数生成完整路由URL:

    events: "{{ route('getEvents') }}",
    

    这样能确保请求精准指向控制器的index方法。

  • 检查响应是否为纯JSON,无额外输出
    打开浏览器开发者工具(F12),切换到Network标签,找到getEvents请求查看Response内容:

    • 如果返回的JSON前有空格、HTML标签或其他字符,说明应用在输出JSON前有额外输出(比如中间件的echo、调试信息),这会直接导致JSON解析失败。
    • 确保控制器index方法没有多余的echo/var_dump,且无其他中间件向响应中添加无关内容。
  • 确认响应头Content-Type正确
    虽然response()->json()会自动设置Content-Type: application/json,但如果有中间件修改了响应头,可能导致FullCalendar无法识别返回格式。可以在控制器里明确指定:

    return response()->json($events)->header('Content-Type', 'application/json');
    
  • 备选:排查CSRF问题(若请求方式被修改)
    你的路由是GET请求,默认无需CSRF验证,但如果FullCalendar被配置为POST请求获取事件,需要在请求中携带CSRF令牌:

    events: {
      url: "{{ route('getEvents') }}",
      method: 'GET', // 明确指定请求方式
      headers: {
        'X-CSRF-TOKEN': "{{ csrf_token() }}"
      }
    },
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 22:36:20