Routing in Express
Routing is the process of determining what should happen when a URL is called, or also which parts of the application should handle a specific incoming request.
Routing is the process of determining what should happen when a URL is called, or also which parts of the application should handle a specific incoming request.
In the Hello World example we used this code
app.get('/', (req, res) => { /* */ })
This creates a route that maps accessing the root domain URL /
using the HTTP GET method to the response we want to provide.
Named parameters
What if we want to listen for custom requests, maybe we want to create a service that accepts a string, and returns that uppercase, and we don’t want the parameter to be sent as a query string, but part of the URL. We use named parameters:
app.get('/uppercase/:theValue', (req, res) => res.send(req.params.theValue.toUpperCase()))
If we send a request to /uppercase/test
, we’ll get TEST
in the body of the response.
You can use multiple named parameters in the same URL, and they will all be stored in req.params
.
Use a regular expression to match a path
You can use regular expressions to match multiple paths with one statement:
app.get(/post/, (req, res) => { /* */ })
will match /post
, /post/first
, /thepost
, /posting/something
, and so on.
I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025