Node.js (Express): Database Connection & REST API CRUD
If you are a web developer looking to create a backend for your application using Node.js and Express, you may need to connect to a database and create a REST API for CRUD operations. In this article, we will guide you through the process of connecting to a database and implementing a REST API for CRUD operations using Node.js and Express.
Database Connection
Node.js provides a variety of libraries for connecting to different databases, such as MySQL, MongoDB, PostgreSQL, and more. One popular library for database connections in Node.js is Mongoose for MongoDB. To connect to a MongoDB database, you can use the following code:
“`javascript
const mongoose = require(‘mongoose’);
mongoose.connect(‘mongodb://localhost:27017/mydatabase’, {
useNewUrlParser: true,
useUnifiedTopology: true
})
.then(() => {
console.log(‘Connected to the database’);
})
.catch((err) => {
console.error(‘Error connecting to the database’, err);
});
“`
REST API CRUD Operations
After connecting to the database, you can create a REST API for CRUD operations using Express. You can define routes for creating, reading, updating, and deleting data from the database. Here is an example of how to implement a REST API for a simple todo list:
“`javascript
const express = require(‘express’);
const app = express();
app.use(express.json());
// Create
app.post(‘/todos’, (req, res) => {
// Create a new todo in the database
res.send(‘Todo created’);
});
// Read
app.get(‘/todos’, (req, res) => {
// Read all todos from the database
res.send(‘List of todos’);
});
// Update
app.put(‘/todos/:id’, (req, res) => {
// Update a todo in the database
res.send(‘Todo updated’);
});
// Delete
app.delete(‘/todos/:id’, (req, res) => {
//Delete a todo from the database
res.send(‘Todo deleted’);
});
app.listen(3000, () => {
console.log(‘Server is running on port 3000’);
});
“`
Conclusion
Node.js and Express make it easy to connect to a database and create a REST API for CRUD operations. With the code examples provided in this article, you should be able to get started with building your backend using Node.js and Express.
Happy coding!
https://youtu.be/VIUEblsGwL4