【发布时间】:2021-08-17 05:08:12
【问题描述】:
如何将身份验证中间件分配给部分资源路由?
此代码是帖子的资源路径
Route::apiResource('posts', PostController::class);
可以解释如下
Route::get('posts', [PostController::class, 'index']);
Route::get('posts/create', [PostController::class, 'create']);
Route::get('posts/{id}', [PostController::class, 'show']);
Route::get('posts/{id}/edit', [PostController::class, 'edit']);
Route::post('posts', [PostController::class, 'store']);
Route::put('posts/{id}', [PostController::class, 'update']);
Route::delete('posts/{id}', [PostController::class, 'destroy']);
我只想将身份验证中间件分配给destroy 方法或store、update 等。
有什么方法可以让我坚持使用Route::apiResource('posts', PostController::class);,但为部分路由分配了身份验证中间件?
【问题讨论】:
-
您可以在控制器的构造函数中分配中间件
-
如果我使用控制器构造函数,所有方法都可以在授权后使用。
标签: laravel