#1 Data Analytics Program in India
₹2,499₹1,499Enroll Now
5 min read
•Question 26 of 28medium

What happens in an API request lifecycle?

Understanding the complete API request flow.

What You'll Learn

  • Complete request flow
  • Middleware chain
  • Response handling

Request Lifecycle

code.jsJavaScript
1. Client sends HTTP request
2. DNS resolution
3. TCP connection (handshake)
4. TLS handshake (HTTPS)
5. Request reaches server
6. Server processes request
7. Response sent back
8. Connection closed/kept alive

Express.js Middleware Chain

code.jsJavaScript
// Order of execution
app.use(morgan('dev'));           // 1. Logging
app.use(cors());                  // 2. CORS headers
app.use(helmet());                // 3. Security headers
app.use(express.json());          // 4. Parse JSON body
app.use(authenticate);            // 5. Authentication
app.use(rateLimit());             // 6. Rate limiting

// Route handlers
app.get('/users', (req, res) => { // 7. Route logic
  res.json(users);
});

// Error handler (last)
app.use((err, req, res, next) => { // 8. Error handling
  res.status(500).json({ error: err.message });
});

Request Object

code.jsJavaScript
app.post('/users', (req, res) => {
  req.method;      // 'POST'
  req.url;         // '/users'
  req.headers;     // { 'content-type': 'application/json', ... }
  req.query;       // { page: '1' } from ?page=1
  req.params;      // { id: '123' } from /users/:id
  req.body;        // Parsed JSON body
  req.cookies;     // Parsed cookies
});

Response Object

code.jsJavaScript
app.get('/users', (req, res) => {
  res.status(200);                    // Set status
  res.set('X-Custom', 'value');       // Set header
  res.cookie('token', 'abc');         // Set cookie
  res.json({ data: users });          // Send JSON
  // or
  res.send('Hello');                  // Send text
  res.redirect('/login');             // Redirect
});