Почему Nest decorator применяется ко всем запросам, даже если он не был явно указан?

Как настроить работу декоратора только на определенных маршрутах, в то время как гвард обрабатывает каждый запрос на любом маршруте?
  • 3 июля 2024 г. 11:32
Ответы на вопрос 2
Nest decorator применяется ко всем запросам по умолчанию потому, что он обычно применяется к контроллерам или к функциям обработчика маршрутов. Однако, его поведение можно настроить таким образом, чтобы он применялся только к определенным маршрутам.

Чтобы настроить декоратор только на определенных маршрутах, вы можете использовать параметризацию декоратора и передавать ему дополнительные аргументы, позволяющие определить, к каким маршрутам он должен быть применен. Также можно использовать middleware для обработки конкретных маршрутов, оставив декоратор для общего использования на других маршрутах.

Гварды, с другой стороны, обычно применяются ко всем запросам на любом маршруте, так как их задача - обеспечить безопасность и авторизацию на уровне приложения в целом. Однако, чтобы настроить работу гварда только на определенных маршрутах, можно воспользоваться фильтрами или использовать middleware для обработки конкретных маршрутов, оставив гвард для других частей вашего приложения.
Вы запровайдили данный guard глобально для всего приложения в строчке 
providers: [RoleService, { provide: APP_GUARD, useClass: PermissionGuard }],


нужно убрать
Похожие вопросы