Belajar Express JS | 19. Menambahkan endpoint baru untuk mengupdate data di database (PATCH)
Express.js is a popular web application framework for Node.js. It provides a robust set of features for building web applications and APIs. In this tutorial, we will learn how to add a new endpoint to update data in the database using the PATCH method.
Step 1: Set up the project
First, make sure you have Node.js and npm installed on your system. Then, create a new directory for your project and run the following command to initialize a new Node.js project:
npm init -y
Next, install Express.js and a database driver of your choice. For this example, we will use MongoDB and the mongoose library:
npm install express mongoose
Step 2: Create a new endpoint for updating data
In your Express.js application, create a new route to handle the PATCH method for updating data in the database. You can use the following code as a starting point:
const express = require('express');
const router = express.Router();
const mongoose = require('mongoose');
// Connect to the MongoDB database
mongoose.connect('mongodb://localhost/my_database', { useNewUrlParser: true, useUnifiedTopology: true });
// Define a schema for your data
const itemSchema = new mongoose.Schema({
name: String,
description: String,
// ... (other fields)
});
const Item = mongoose.model('Item', itemSchema);
// Update an existing item in the database
router.patch('/items/:id', async (req, res) => {
try {
const itemId = req.params.id;
const updatedItem = req.body;
const result = await Item.findByIdAndUpdate(itemId, updatedItem, { new: true });
res.json(result);
} catch (error) {
res.status(500).json({ message: error.message });
}
});
module.exports = router;
Step 3: Test the endpoint
You can now test the new endpoint using a tool like Postman or by sending a PATCH request from your frontend application. Make sure to include the item ID in the URL and the updated data in the request body.
Conclusion
Adding a new endpoint to update data in the database using the PATCH method is a common requirement for many web applications and APIs. With Express.js, it is straightforward to create a route for handling PATCH requests and updating the database accordingly.