วงจรชีวิตของ request (request lifecycle) คือลำดับที่แม่นยำขององค์ประกอบที่ request ผ่านใน NestJS — middleware, guard, interceptor, pipe, handler, แล้ว interceptor อีกครั้ง และ exception filter เมื่อเกิด error การรู้ลำดับที่ถูกต้องเป็นสิ่งสำคัญต่อการเข้าใจว่า logic แต่ละชิ้นทำงาน เมื่อใด
ลำดับทั้งหมด
Incoming Request
│
▼
1. MIDDLEWARE (Express-style; raw req/res; runs first)
│
▼
2. GUARDS (authorization — return true to continue, false/throw to block)
│
▼
3. INTERCEPTORS (pre) (logic BEFORE the handler — start timing, etc.)
│
▼
4. PIPES (validate/transform the handler's arguments — DTO validation)
│
▼
5. ROUTE HANDLER (your controller method runs)
│
▼
6. INTERCEPTORS (post) (logic AFTER the handler — transform the response)
│
▼
Response
✗ If an exception is thrown ANYWHERE above →
7. EXCEPTION FILTERS (catch it and format the error response)
