Vòng đời request là chuỗi chính xác các thành phần mà một request đi qua trong NestJS — middleware, guard, interceptor, pipe, handler, rồi interceptor lại, và exception filter khi có lỗi. Biết thứ tự chính xác là then chốt để hiểu khi nào mỗi mảnh logic chạy.
Thứ tự đầy đủ
Request đến
│
▼
1. MIDDLEWARE (kiểu Express; req/res thô; chạy đầu tiên)
│
▼
2. GUARDS (phân quyền — trả về true để tiếp tục, false/ném để chặn)
│
▼
3. INTERCEPTORS (pre) (logic TRƯỚC handler — bắt đầu đếm thời gian, v.v.)
│
▼
4. PIPES (validate/biến đổi các argument của handler — validate DTO)
│
▼
5. ROUTE HANDLER (method controller của bạn chạy)
│
▼
6. INTERCEPTORS (post) (logic SAU handler — biến đổi response)
│
▼
Response
✗ Nếu một exception được ném ra Ở BẤT KỲ ĐÂU phía trên →
7. EXCEPTION FILTERS (bắt nó và định dạng response lỗi)
