Express JS: Essential Code Snippets

Express JS: Essential Code Snippets

Express.js Cheat Sheet

Getting Started

  1. Install Express.js: npm install express
  2. Import Express: const express = require('express');
  3. Create an Express application: const app = express();

Routing

  1. Define a route:
    app.get('/route', (req, res) => {
      // Handle request
    });
  2. Route with parameters:
    app.get('/users/:id', (req, res) => {
      const userId = req.params.id;
      // Handle user ID
    });
  3. Route with query parameters:
    app.get('/search', (req, res) => {
      const query = req.query.q;
      // Handle search query
    });

Middleware

  1. Use middleware:
    app.use(express.json()); // JSON body parser
    app.use(express.static('public')); // Static files
  2. Custom middleware:
    const customMiddleware = (req, res, next) => {
      // Do something before route handler
      next(); // Call next middleware or route handler
    };
    app.use(customMiddleware);

HTTP Methods

  • GET: app.get()
  • POST: app.post()
  • PUT: app.put()
  • DELETE: app.delete()
  • PATCH: app.patch()

Request and Response

  • req.params: Route parameters
  • req.query: Query parameters
  • req.body: Request body (for JSON)
  • req.headers: Request headers
  • res.send(): Send response data
  • res.json(): Send JSON response
  • res.status(): Set response status

Route Middleware

  1. Route-specific middleware:
    const routeMiddleware = (req, res, next) => {
      // Middleware logic
      next();
    };
    app.get('/route', routeMiddleware, (req, res) => {
      // Route handler
    });
  2. Error handling middleware:
    const errorHandler = (err, req, res, next) => {
      console.error(err);
      res.status(500).send('Something went wrong');
    };
    app.use(errorHandler);

Serving Views

  1. Set view engine:
    app.set('view engine', 'ejs');
  2. Render views:
    app.get('/view', (req, res) => {
      res.render('view', { data: 'Data to pass' });
    });

Static Files

  1. Serve static files from a directory:
    app.use(express.static('public'));
  2. Access files in HTML: <link rel="stylesheet" href="/styles.css">

Redirects

  1. Redirect to a URL:
    app.get('/old-url', (req, res) => {
      res.redirect('/new-url');
    });

Error Handling

  1. Handle 404 Not Found:
    app.use((req, res, next) => {
      res.status(404).send('Page not found');
    });
  2. Handle errors:
    app.use((err, req, res, next) => {
      console.error(err);
      res.status(500).send('Something went wrong');
    });

Listen

  1. Start server:
    const PORT = process.env.PORT || 3000;
    app.listen(PORT, () => {
      console.log(`Server is running on port ${PORT}`);
    });

This cheat sheet covers essential concepts in Express.js. Remember to refer to the official Express.js documentation for detailed information and advanced usage.