Middleware System
MoroJS features an intelligent middleware system that automatically orders execution, provides type-safe context passing, and optimizes performance.
How Middleware Works
Middleware in MoroJS runs in a predictable, optimized order:
Execution Order
- 1Request parsing
- 2Authentication
- 3Authorization
- 4Validation
- 5Rate limiting
- 6Caching
- 7Handler execution
Benefits
- Automatic optimization
- Type-safe context
- Early exit on errors
- Composable design
- Performance optimized
Global Middleware
Global middleware runs on every request and is perfect for logging, CORS, and other cross-cutting concerns:
Global Middleware Example
typescript
Route-Specific Middleware
Authentication Middleware
typescript
Multiple Middleware
typescript
Built-in Middleware
MoroJS includes several built-in middleware options:
Built-in Middleware Options
typescript
Creating Custom Middleware
Custom Middleware Pattern
typescript
Conditional Middleware
typescript