Introduction
Express.js is a powerful Node.js web application framework that simplifies the process of building web applications and APIs. It provides a robust set of features, including routing, middleware, and template engines, making it a popular choice among developers.
Setting Up Express.js
To get started with Express.js, you first need to install it using npm:
1
npm install express
Once installed, you can create an Express application using the following code:
1
2
const express = require('express');
const app = express();
This minimal setup creates an Express application instance, which can then be used to define routes, middleware, and more.
Basic Routing in Express.js
Routing is a fundamental concept in Express.js that allows you to handle different HTTP requests. Here’s an example of defining a simple route that responds with “Hello, World!”:
1
2
3
app.get('/', (req, res) => {
res.send('Hello, World!');
});
In this code snippet, we use the get
method to define a route that matches the root URL (“/”) and sends a response using res.send
.
Middleware in Express.js
Middleware functions are functions that have access to the request and response objects, and the next middleware function in the application’s request-response cycle. They can perform tasks such as logging, authentication, and more. Here’s an example of creating a custom middleware function:
1
2
3
4
5
6
const logger = (req, res, next) => {
console.log(`${req.method} ${req.url}`);
next();
};
app.use(logger);
In this example, the logger
function logs the HTTP method and URL of each incoming request before passing control to the next middleware function.
Error Handling in Express.js
Express.js provides a convenient way to handle errors using middleware functions with four parameters, known as error-handling middleware. Here’s an example of error handling middleware:
1
2
3
4
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send('Internal Server Error');
});
Error-handling middleware functions should be defined last in the middleware stack and have four parameters, with the first parameter being the error object.
Conclusion
Express.js is a versatile framework that allows developers to build scalable web applications and APIs with ease. By mastering its features, such as routing, middleware, and error handling, developers can create robust applications that meet their specific requirements. Whether you’re a beginner or an experienced developer, exploring and mastering Express.js can significantly enhance your Node.js development skills.