首页 > 解决方案 > API 资源 Laravel

问题描述

我想了解 Laravel 中 API 资源背后的概念。如果我理解我在这里读到的答案。如果我有一个自定义端点并且为该控制器定义了 apiresource 端点。当我在控制器上调用自定义端点时,是否会自动调用 apiresource 端点(如 show、store)?

示例我有这个:

Route::post('postorderitems', 'Api\OrderitemsController@postOrderItem')->middleware('auth:api');

如果我调用它并且这是定义的:

Route::apiResource('orderitems', 'Api\OrderitemsController')->middleware('auth:api');

是否会自动调用 store 方法OrderitemsController

标签: phplaravelapi

解决方案


Route::apiResource()为给定资源定义 REST API 路由:indexstoreview和.updatedestroy

您的控制器可能已经定义了与上述名称相同的公共方法。如果控制器有这些方法,那么,是的,路由将与控制器功能“关联”。

Route::apiResource('orderitems', 'Api\OrderitemsController')->middleware('auth:api');

发送 POST 请求orderitems将由 Api\OrderitemsController@store方法处理。

我建议运行php artisan route:list命令以查看您的路线指向哪个控制器的方法。

资源控制器


推荐阅读