Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама

Що входить у групи middleware web і api?

Групи підключаються автоматично: web - до routes/web.php, api - до routes/api.php.

Група web - усе для сторінок у браузері:

  • EncryptCookies і AddQueuedCookiesToResponse - шифровані cookie;
  • StartSession - сесія;
  • ShareErrorsFromSession - змінна $errors у шаблонах;
  • PreventRequestForgery - захист від CSRF (у Laravel 13 спершу перевіряє заголовок Sec-Fetch-Site, потім токен);
  • SubstituteBindings - прив'язка моделей до параметрів маршруту.

Група api - лише SubstituteBindings. Немає сесії, cookie й CSRF: API зазвичай автентифікується токеном (auth:sanctum) і не тримає стану.

Наслідки, про які питають:

  • маршрут з routes/api.php не бачить сесії й old();
  • SPA на тому самому домені через Sanctum працює з cookie - для цього Sanctum додає потрібні middleware до api через statefulApi();
  • routes/api.php у свіжому Laravel 11+ немає - його створює php artisan install:api.

Додати своє в групу:

->withMiddleware(function (Middleware $middleware): void {
    $middleware->web(append: [SetLocale::class]);
    $middleware->api(prepend: [ForceJsonResponse::class]);
})

Докладніше в документації: Типові групи middleware

Перевір себе

20 випадкових питань за спробу, після завершення - розбір кожної помилки

Схожі питання