
Middleware та Interceptors
Middleware, interceptors, оператори RxJS, трансформація запиту/відповіді, caching
1Що таке middleware у NestJS?
Що таке middleware у NestJS?
Відповідь
Middleware — це функція, яка виконується перед route handler. Вона має доступ до об'єктів request і response та може змінювати запит, відповідь, завершувати цикл запит-відповідь або передавати керування наступному middleware за допомогою next(). Middleware ідеальні для логування, базової автентифікації або зміни заголовків. Вони виконуються в порядку оголошення.
2Що таке interceptor у NestJS?
Що таке interceptor у NestJS?
Відповідь
Interceptor — це клас із декоратором @Injectable(), який реалізує NestInterceptor. Він дозволяє перехоплювати запити до та після виконання route handler. Завдяки RxJS він може трансформувати результат, обробляти помилки, додавати caching, вимірювати продуктивність або логувати відповіді. Interceptors надають більше контролю над повним життєвим циклом, ніж middleware.
3Яка основна різниця між middleware та interceptor?
Яка основна різниця між middleware та interceptor?
Відповідь
Middleware виконуються перед handler і не мають доступу до фінальної відповіді. Interceptors використовують RxJS і можуть діяти до ТА після виконання, що дозволяє трансформувати відповідь. Middleware простіші для базових завдань, як-от логування запитів, тоді як interceptors потужніші для трансформації даних, обробки помилок або реалізації caching.
У якому порядку виконуються компоненти в NestJS?
Як застосувати middleware глобально в NestJS?
+17 питань зі співбесід
Інші теми співбесід Node.js / NestJS
Основи Node.js
Основні API Node.js
Асинхронне програмування
Основи Express.js
Основи NestJS
Проєктування REST API
Валідація та DTO
Документація API та контракти
Обробка помилок
Юніт-тестування
Планування завдань
Модулі та DI у NestJS
Конфігурація та керування середовищами
Автентифікація JWT
Авторизація та RBAC
База даних з TypeORM
Prisma ORM
Завантаження файлів
WebSockets
GraphQL з NestJS
Наскрізне тестування (End-to-End)
Кешування з Redis
Черги з Bull
DevOps, Logging та CI/CD
Docker та контейнеризація
Мікросервіси
Найкращі практики безпеки
Продуктивність і хмарне розгортання
Опануй Node.js / NestJS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно