Node.js / NestJS

Middleware và Interceptor

Middleware, interceptor, toán tử RxJS, biến đổi request/response, caching

20 câu hỏi phỏng vấn·
Mid-Level
1

Middleware trong NestJS là gì?

Câu trả lời

Middleware là một hàm được thực thi trước route handler. Nó có quyền truy cập vào các đối tượng request và response, và có thể thay đổi request, response, kết thúc chu trình request-response, hoặc chuyển sang middleware tiếp theo bằng next(). Middleware lý tưởng cho việc logging, xác thực cơ bản, hoặc thay đổi header. Chúng được thực thi theo thứ tự khai báo.

2

Interceptor trong NestJS là gì?

Câu trả lời

Interceptor là một class với decorator @Injectable() triển khai NestInterceptor. Nó cho phép chặn các request trước và sau khi route handler được thực thi. Nhờ RxJS, nó có thể biến đổi kết quả, xử lý lỗi, thêm caching, đo lường hiệu năng, hoặc ghi log response. Interceptor cung cấp nhiều quyền kiểm soát hơn middleware đối với toàn bộ vòng đời.

3

Sự khác biệt chính giữa middleware và interceptor là gì?

Câu trả lời

Middleware thực thi trước handler và không có quyền truy cập vào response cuối cùng. Interceptor sử dụng RxJS và có thể hoạt động trước VÀ sau khi thực thi, cho phép biến đổi response. Middleware đơn giản hơn cho các tác vụ cơ bản như ghi log request, trong khi interceptor mạnh mẽ hơn cho việc biến đổi dữ liệu, xử lý lỗi, hoặc triển khai caching.

4

Các thành phần trong NestJS thực thi theo thứ tự nào?

5

Làm thế nào để áp dụng middleware toàn cục trong NestJS?

+17 câu hỏi phỏng vấn

Nắm vững Node.js / NestJS cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí