Считается ли это подходом фасадов в Laravel?

У меня есть часть функциональности, которая идентифицирует доступ по данному токену (строке). Если указан действительный токен, сеанс должен быть заполнен допустимой записью (используя SessionInterface). Я настроил свой VerifyToken middleware и хотел бы использовать подход, подобный Guard, для проверки моих токенов и хранения сеансов.

Мой вопрос, считается ли этот тип функциональности фасадом в Laravel? Если так; какое было бы подходящее место для хранения этих файлов (например, app\Facades а также app\Facades\Contracts хранить интерфейсы)?

1 ответ

Решение

Фасад в Laravel - это только способ разрешить привязку из сервисного контейнера.

Таким образом, для меня Фасады сами по себе рассматриваются не как "функциональность приложения", а как способ доступа к службам (которые предоставляют функциональность), хранящимся в вашем контейнере услуг.

При этом, если вы хотите создавать сервисы с подходом, похожим на Guard, я думаю, что, как обычно, структура каталогов зависит от вас: Laravel очень гибок в этом контексте

После того, как вы построите свои классы обслуживания, если вы считаете, что это будет полезно, вы можете внедрить один или несколько фасадов для доступа к некоторым услугам.

Лично я не большой поклонник Фасада, я думаю, что лучше использовать Dependency Injection (через параметры метода или конструктора), где это возможно: это внедрит ваши сервисы там, где это необходимо, но в то же время сохранит ваши кодовые зависимости более ясными, так как они немедленно видны из подписи метода

Другие вопросы по тегам