Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Laravel: middleware, laravel, authentication, routing, auth, cors

Что такое middleware в контексте Laravel?

Этот вопрос проверяет понимание механизма middleware в Laravel и его роли в обработке HTTP-запросов и ответов.

Короткий ответ

Middleware в Laravel — это фильтры, которые перехватывают HTTP-запросы и ответы, добавляя кросс-сквозную логику. Они используются для задач, таких как проверка аутентификации, логирование, управление CORS или ограничение доступа. Middleware обрабатывает запрос до или после его передачи в контроллер, обеспечивая модульность и чистоту основной логики приложения.

Длинный ответ

В Laravel middleware выполняют роль посредников между входящими запросами и действиями контроллеров. Они позволяют добавлять функциональность на этапе обработки запроса или перед отправкой ответа. Middleware — ключевая часть архитектуры Laravel, которая упрощает обработку кросс-сквозных задач.

Когда использовать middleware?

  • Аутентификация: Убедиться, что пользователь авторизован.

  • Авторизация: Проверить, имеет ли пользователь доступ к определённым ресурсам.

  • Логирование: Отслеживание запросов для аналитики или отладки.

  • CORS (Cross-Origin Resource Sharing): Управление доступом между доменами.

  • Ограничение запросов (Rate Limiting): Защита от перегрузки сервера.

Преимущества использования middleware в Laravel

  • Чистота кода: Кросс-сквозная логика изолируется от контроллеров.

  • Повторное использование: Один middleware может быть назначен на несколько маршрутов.

  • Гибкость: Лёгкость настройки и расширения логики обработки запросов.

Пример полного цикла использования middleware

Создаём middleware для проверки возраста:

php artisan make:middleware CheckAge

Реализуем логику проверки:

namespace App\Http\Middleware;

use Closure;

class CheckAge
{
    	public function handle($request, Closure $next)
    	{
        	if ($request->age < 18) {
            		return redirect('home');
        	}
        	return $next($request);
    	}
}

Регистрируем middleware в Kernel.php:

protected $routeMiddleware = [
    	'checkAge' => \App\Http\Middleware\CheckAge::class,
];

Применяем middleware к маршруту:

Route::get('/restricted', function () {
    	return 'Welcome to the restricted area!';
})->middleware('checkAge');

Теперь, если пользователь младше 18 лет, он будет перенаправлен на страницу home.

Вывод:

Middleware в Laravel — мощный инструмент, который позволяет добавлять логику проверки или модификации запросов на разных этапах их обработки. Это улучшает читаемость кода, делает его модульным и позволяет легко масштабировать приложение.

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    7

Навыки

  • Laravel

    Laravel

Ключевые слова

#middleware

#laravel

#authentication

#routing

#auth

#cors

Подпишись на PHP Developer в телеграм

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.