我正在尝试将新控制器添加到现有的laravel项目中。该应用程序已经在/users
处有一些页面,我正在尝试添加一个RESTful API,它与此分开工作。我希望API可以在api/users
处获得。
我使用PHP artisan创建了控制器:
php artisan controller:make ApiUsersController
我已将以下内容添加到我的路线中:
Route::controller('api/users', 'ApiUsersController');
然而,当我点击网址时,我刚收到该网站的网页找不到'消息。
我有什么遗漏的吗?
答案 0 :(得分:1)
您遇到的问题似乎是您已使用Route::controller
而不是Route::resource
。
Route::resource
将路由映射到控制器生成器默认创建的七种RESTful方法。 Route::controller
将它们映射到您自己添加的方法,这些方法将HTTP方法作为其名称的一部分,在您的情况下,如果您有一个名为getIndex
的方法,它将在对{{1}的GET请求上调用或者,如果您有一个名为/api/users/index
的人,则会在postStore
的POST请求中调用它。
为了将API前缀添加到路线,您可以使用以下内容:
/api/users/store
您还可以在同一回调中添加API中的任何其他控制器。