Laravel 有一个名为 web 的中间件组来保护你的路由。它在web.php 文件中。
你可以在app/Providers/RouteServiceProvider.php看到路由中间件
protected function mapWebRoutes()
{
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
}
网络中间件组为您的项目添加大量中间件,例如VerifyCsrfToken
你可以在 `app/Http/Kernel.php' 中看到它们的列表
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
你可能知道,Laravel 有另一个名为 api 的中间件和路由文件夹,它没有任何 CSRF 保护。
您可以将不需要 CSRF 保护的路由(我的意思是您的应用程序的 API)声明为route/api.php
通过在route/api.php 文件中声明这种路由,您可以轻松地使用 Postman/Insomnia 之类的应用发出请求。