Node.js / NestJS

Middleware e Interceptor

Middleware, interceptor, operatori RxJS, trasformazione richiesta/risposta, caching

20 domande da colloquio·
Mid-Level
1

Che cos'è un middleware in NestJS?

Risposta

Un middleware è una funzione che viene eseguita prima del route handler. Ha accesso agli oggetti request e response, e può modificare la richiesta, la risposta, terminare il ciclo richiesta-risposta, o passare al middleware successivo con next(). I middleware sono ideali per il logging, l'autenticazione di base, o la modifica degli header. Vengono eseguiti nell'ordine in cui sono dichiarati.

2

Che cos'è un interceptor in NestJS?

Risposta

Un interceptor è una classe con decorator @Injectable() che implementa NestInterceptor. Permette di intercettare le richieste prima e dopo l'esecuzione del route handler. Grazie a RxJS, può trasformare il risultato, gestire gli errori, aggiungere caching, misurare le prestazioni, o registrare le risposte. Gli interceptor offrono più controllo dei middleware sull'intero ciclo di vita.

3

Qual è la principale differenza tra un middleware e un interceptor?

Risposta

I middleware vengono eseguiti prima dell'handler e non hanno accesso alla risposta finale. Gli interceptor usano RxJS e possono agire prima E dopo l'esecuzione, permettendo la trasformazione della risposta. I middleware sono più semplici per attività di base come il logging delle richieste, mentre gli interceptor sono più potenti per la trasformazione dei dati, la gestione degli errori, o l'implementazione del caching.

4

In quale ordine vengono eseguiti i componenti in NestJS?

5

Come applicare un middleware globalmente in NestJS?

+17 domande da colloquio

Padroneggia Node.js / NestJS per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis