有一个路由如下:
Route::post('user/{id}/update','UserController@update');
我想禁用它的csrf保护,但我不知道如何将其uri添加到except
数组中。
有一个路由如下:
Route::post('user/{id}/update','UserController@update');
我想禁用它的csrf保护,但我不知道如何将其uri添加到except
数组中。
您可以将给定的代码添加到App/Http/Middleware
目录下的VerifyCsrfToken
文件中。
protected $except = [
'user/*',
];
Route::post('user/{id}/update', [
'uses' => 'UserController@update',
'nocsrf' => true,
]);
在 Laravel 的最新版本中,最好的解决方案之一是使用 withoutMiddleware 方法:
Route::post('user/{id}/update', 'UserController@update')
->withoutMiddleware([\App\Http\Middleware\VerifyCsrfToken::class]);
即使您将路由放在中间件组内,此方法仍然有效。
Route::middleware(['web'])->group(function () {
Route::post('user/{id}/update', 'UserController@update')
->withoutMiddleware([\App\Http\Middleware\VerifyCsrfToken::class]);
});