【问题标题】:Laravel 5 Dingo API controllerLaravel 5 野狗 API 控制器
【发布时间】:2015-11-02 01:48:08
【问题描述】:

我一直在尝试使用 Laravel 5 Dingo API 包实现 REST API。

这是我的路由代码:

 $api->version('v1', function ($api) {
    $api->get('users/{id}', 'Api\V1\UsersController@show');
});

这是我的错误代码:

{"message":"Class Api\\V1\\UsersController does not exist","code":-1,"status_code":500}

那么,我应该将我的控制器文件放在哪里才能找到我的控制器的正确路径?

我将文件放在app/http/controllers/Api/V1/ 目录中,但仍然出现这种错误。

我正在为 Laravel 使用 Dingo API 0.10。

【问题讨论】:

  • 您的UsersController 文件是否有正确的命名空间? IE。文件顶部是否有namespace App\Http\Controllers\Api\V1
  • 是的,用户控制器顶部有namespace App\Http\Controllers\Api\V1
  • 我能看到的唯一另一件事是检查拼写错误并检查您是否正确遵循文档:github.com/dingo/api/wiki/Creating-API-Endpoints 如果您可以为您的问题添加更多信息,您可以能够获得更多帮助。也许复制粘贴route:list的输出
  • 解决了这个问题我在路由$api->get('users/{id}', 'App\Http\Controllers\Api\V1\UsersController@show');添加控制器的完整路径
  • 很高兴您找到了解决问题的方法。如果您愿意,可以添加您的答案!

标签: php api rest laravel dingo-api


【解决方案1】:

通过在路由中添加控制器的完整路径

$api->get('users/{id}', 'App\Http\Controllers\Api\V1\UsersController@show');

将修复此错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    • 2017-05-22
    • 1970-01-01
    • 1970-01-01
    • 2016-07-23
    • 2015-06-10
    • 2018-09-24
    相关资源
    最近更新 更多