First, ensure that Node.js is installed:
node -v
Create a new project:
mkdir express-app && cd express-app
npm init -y
Run the following command to install Express.js:
npm install express
Create a file server.js
and add the following code:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, Express.js!');
});
const PORT = 3000;
app.listen(PORT, () => {
console.log(`Server running at http://localhost:${PORT}/`);
});
Run the server:
node server.js
Modify server.js
to support multiple routes:
app.get('/', (req, res) => {
res.send('<h1>Home Page</h1>');
});
app.get('/about', (req, res) => {
res.send('<h1>About Us</h1>');
});
app.get('/api', (req, res) => {
res.json({ message: 'Hello, API!' });
});
Middleware functions process requests before sending responses. Add express.json()
middleware to handle JSON data:
app.use(express.json());
app.post('/data', (req, res) => {
const receivedData = req.body;
res.json({ message: 'Data received', data: receivedData });
});
To keep routes organized, create a routes.js
file:
const express = require('express');
const router = express.Router();
router.get('/', (req, res) => {
res.send('Welcome to the Home Route');
});
router.get('/users', (req, res) => {
res.json([{ id: 1, name: 'John Doe' }]);
});
module.exports = router;
Import it in server.js
:
const routes = require('./routes');
app.use('/', routes);
To catch errors globally, use error-handling middleware:
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send('Something broke!');
});
Express.js is a robust and flexible framework that makes Node.js web development simpler and faster. This guide covered:
✅ Setting up an Express.js server
✅ Handling routes and JSON responses
✅ Using middleware for request processing
✅ Implementing modular routing
For advanced features, explore authentication, database integration, and deployment. Need help with an Express API? 🚀