Reading Path Parameters in Node.js

Path parameters are an essential part of RESTful APIs, allowing the server to capture values from the URL and use them in request handling. This capability is crucial for creating dynamic and flexible endpoints. In Node.js, especially when using frameworks like Express.js, handling path parameters is straightforward and efficient. In this article, we’ll explore how to read path parameters in Node.js and use them in your applications.

Understanding Path Parameters

Path parameters are segments of a URL that are defined in the path of an endpoint and are used to pass data to the server. They are commonly used for resource identification and can be essential for routing purposes.

For example, in the URL http://example.com/users/123, 123 is a path parameter that might represent a user ID.

Setting Up a Node.js Environment

Before we dive into reading path parameters, let’s set up a basic Node.js environment.

Step 1: Install Node.js and npm

Ensure you have Node.js and npm installed. You can download them from the official Node.js website.

Step 2: Initialize a New Project

Create a new directory for your project and initialize it with npm

mkdir myapp
cd myapp
npm init -y

Step 3: Install Express

Express is a popular web framework for Node.js that simplifies routing and handling HTTP requests. Install it using npm

npm i express

Step 4: Create a Server File

Create a new file named server.js

touch server.js

Project Structure:

The updated dependencies in package.json file will look like:

"dependencies": {
"express": "^4.19.2"
}

Example: Implementation to write the code for reading Path Parameters in Node.js.

javascript
// server.js

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

const PORT = process.env.port || 3000 

// View Engine Setup 
app.set("views", path.join(__dirname)) 
app.set("view engine", "ejs") 

app.get("/user/:id/:start/:end", function(req, res){ 

 const user_id = req.params['id'] 
 const start = req.params['start'] 
 const end = req.params['end'] 
 
 console.log("User ID :",user_id);
 console.log("Start :",start);
 console.log("End :",end);
}) 

app.listen(PORT, function(error){ 
 if (error) throw error 
 console.log("Server created Successfully on PORT", PORT) 
}) 

Step to Run Application: Run the application using the following command from the root directory of the project

node server.js

Output: Your project will be shown in the URL http://localhost:3000/

Open browser and type this URL “http://localhost:3000/user/1234/1/10” as shown below

Go back to console and you can see the path parameter value as shown below:

So this is how you can use the path parameter in Node.js which offers a unique opportunity for the user to control the representations of resources.