The query string is the part that comes after the URL path, and starts with a question mark ?.

For example:

?name=flavio

Multiple query parameters can be added using &:

?name=flavio&age=35

How do you get those query string values in Express?

Express makes it very easy by populating the Request.query object for us:

const express = require('express')
const app = express()

app.get('/', (req, res) => {
  console.log(req.query)
})

app.listen(8080)

This object is filled with a property for each query parameter.

If there are no query params, it’s an empty object.

This makes it easy to iterate on it using the for…in loop:

for (const key in req.query) {
  console.log(key, req.query[key])
}

This will print the query property key and the value.

You can access single properties as well:

req.query.name //flavio
req.query.age //35

Download my free Express.js book!

But.. wait! Don't stop here.

I created a premium training program that will transform you, quickly, into an excellent Node.js developer. Practical lessons to learn the 80% of Node.js that you need, in 20% of the time!

⬇️ ⬇️ ⬇️

Sign up to the Node.js Course now!

⬆️ ⬆️ ⬆️