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

Laravel处理API请求时返回BadMethodCallException的原因是什么?

解决Laravel中Axios调用API出现BadMethodCallException的问题

问题根源

你的APIController里的test方法被定义为private(私有),Laravel路由无法调用控制器的私有方法,这就是抛出BadMethodCallException的原因。

修复方案

将控制器中的test方法的访问修饰符从private改为public:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class APIController extends Controller
{
    // 改为public
    public function test(Request $request)
    {
        // test
        return response()->json(new \stdClass());
    }
}

补充说明

  • 你的路由配置(api.php)是正确的,无需修改。
  • 之前清除缓存无效是因为问题核心不在缓存,而是方法的访问权限错误。修改后重新发起Axios请求即可正常获取响应。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 21:32:37