Express req.body Property
Last Updated :
14 Apr, 2025
The req.body property contains key-value pairs of data submitted in the request body. By default, it is undefined and is populated when you use a middleware called body-parsing such as express.urlencoded() or express.json().
Syntax:
req.body
Parameter: No parameters.
Return Value: Object
- The
req.body
property is used to access the data sent by the client in POST requests.
Steps to Install the express module:
Step 1: You can install this package by using this command.
npm install express
Step 2: After installing the express module, you can check your express version in the command prompt using the command.
npm version express
Step 3: After that, you can just create a folder and add a file, for example, index.js. To run this file you need to run the following command.
node index.js
Project Structure:
Project StructureThe updated dependencies in package.json file will look like:
"dependencies": {
"express": "^4.21.2"
}
Example 1: Below is the code of req.body Property implementation.
javascript
const express = require('express');
const app = express();
const PORT = 3000;
// For parsing application/json
app.use(express.json());
// For parsing application/x-www-form-urlencoded
app.use(express.urlencoded({ extended: true }));
app.post('/profile', function (req, res) {
console.log(req.body);
res.send();
});
app.listen(PORT, function (err) {
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});
Steps to run the program:
Run the index.js file using the below command:
node index.js
Now make a POST request to http://localhost:3000/profile with the following body:
{
"title":"Greetings from GeeksforGeeks"
}
Console Output: Now you can see the following output on your console:
Server listening on PORT 3000
{ title: 'Greetings from GeeksforGeeks' }
Example 2: Below is the code of req.body Property implementation.
javascript
const express = require('express');
const app = express();
const PORT = 3000;
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.post('/signup', function (req, res) {
const data = req.body;
console.log("Name: ", data.name);
console.log("Age: ", data.age);
console.log("Gender: ", data.gender);
res.send();
});
app.listen(PORT, function (err) {
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});
Steps to run the program:
Run the index.js file using the below command:
node index.js
Now make a POST request to http://localhost:3000/signup with the following request body:
{
"name": "Gourav",
"age": 13,
"gender":"Male"
}
Output: Now you will see the following output on your console screen:
Server listening on PORT 3000
Name: Gourav
Age: 13
Gender: Male
Middleware for Parsing Request Body
Express provides middleware to parse request bodies. The two most commonly used middleware are:
- express.json(): Parses incoming JSON-formatted data in the body of the request.
app.use(express.json()); // Parses JSON request bodies
- express.urlencoded(): Parses URL-encoded form data (typically used in HTML forms). The extended: true option allows parsing of complex objects like arrays.
app.use(express.urlencoded({ extended: true }))
Handling Large Request Bodies
Express's default body parser has limits on the size of the incoming data. If you need to handle larger request bodies (for instance, for file uploads), you can configure the size limit in the middleware.
app.use(express.json({ limit: '10mb' })); // Set the maximum body size to 10 MB
app.use(express.urlencoded({ extended: true, limit: '10mb' }));
Common Use Cases of req.body
- Form Submissions: Capturing data from forms (login, signup, etc.).
- API Requests: Handling JSON payloads sent by the client to interact with the server.
- File Uploads: Parsing file data from multi-part form submissions (although for this, you'd typically use additional middleware like multer).
Conclusion
The req.body property in Express is essential for accessing the data sent by the client in HTTP POST requests. By using middleware such as express.json() or express.urlencoded(), we can parse the request body into a readable format, making it easier to access key-value pairs of data. This property simplifies handling form submissions, API requests, and any other data passed in the body of a request.
Similar Reads
Web Development Technologies Web development refers to building, creating, and maintaining websites. It includes aspects such as web design, web publishing, web programming, and database management. It is the creation of an application that works over the internet, i.e., websites.Basics of Web Development To better understand t
7 min read
HTML Tutorial
CSS Tutorial CSS stands for Cascading Style Sheets. It is a stylesheet language used to style and enhance website presentation. CSS is one of the three main components of a webpage, along with HTML and JavaScript.HTML adds Structure to a web page.JavaScript adds logic to it and CSS makes it visually appealing or
7 min read
JS Tutorial
JavaScript TutorialJavaScript is a programming language used to create dynamic content for websites. It is a lightweight, cross-platform, and single-threaded programming language. It's an interpreted language that executes code line by line, providing more flexibility.Client Side: On the client side, JavaScript works
11 min read
JSON TutorialJSON (JavaScript Object Notation) is a widely-used, lightweight data format for representing structured data. Used Extensively : Used in APIs, configuration files, and data exchange between servers and clients.Text-based: JSON is a simple text format, making it lightweight and easy to transmit.Human
5 min read
TypeScript TutorialTypeScript is a superset of JavaScript that adds extra features like static typing, interfaces, enums, and more. Essentially, TypeScript is JavaScript with additional syntax for defining types, making it a powerful tool for building scalable and maintainable applications.Static typing allows you to
8 min read
Vue.js TutorialVue.js is a progressive JavaScript framework for building user interfaces. It stands out for its simplicity, seamless integration with other libraries, and reactive data binding.Built on JavaScript for flexible and component-based development.Supports declarative rendering, reactivity, and two-way d
4 min read
jQuery TutorialjQuery is a lightweight JavaScript library that simplifies the HTML DOM manipulating, event handling, and creating dynamic web experiences. The main purpose of jQuery is to simplify the usage of JavaScript on websites. jQuery achieves this by providing concise, single-line methods for complex JavaSc
8 min read
Front End
React TutorialReact is a powerful JavaScript library for building fast, scalable front-end applications. Created by Facebook, it's known for its component-based structure, single-page applications (SPAs), and virtual DOM,enabling efficient UI updates and a seamless user experience.Note: The latest stable version
7 min read
Angular TutorialAngular is a powerful, open-source web application framework for building dynamic and scalable single-page applications (SPAs). Developed by Google, Angular provides a comprehensive solution for front-end development with tools for routing, form handling, HTTP services, and more.Designed for buildin
4 min read
Backend
Node.js TutorialNode.js is a powerful, open-source, and cross-platform JavaScript runtime environment built on Chrome's V8 engine. It allows you to run JavaScript code outside the browser, making it ideal for building scalable server-side and networking applications.JavaScript was mainly used for frontend developme
4 min read
Express.js TutorialExpress.js is a minimal and flexible Node.js web application framework that provides a list of features for building web and mobile applications easily. It simplifies the development of server-side applications by offering an easy-to-use API for routing, middleware, and HTTP utilities.Built on Node.
4 min read
PHP TutorialPHP is a popular, open-source scripting language mainly used in web development. It runs on the server side and generates dynamic content that is displayed on a web application. PHP is easy to embed in HTML, and it allows developers to create interactive web pages and handle tasks like database mana
9 min read
Laravel TutorialLaravel is an open-source PHP web application framework that has gained immense popularity since its inception in 2011, created by Taylor Otwell. This renowned framework empowers developers to build robust, scalable web applications with remarkable ease. As a developer-friendly framework, Laravel of
3 min read
Database
Web Technologies Questions The following Web Technologies Questions section contains a wide collection of web-based questions. These questions are categorized based on the topics HTML, CSS, JavaScript, and many more. Each section contains a bulk of questions with multiple solutions. Table of Content HTML QuestionsCSS Question
15+ min read