Fetch() methods

Head of the Node.js


const express = require('express');
const cors = require('cors');
require('dotenv').config()
const { MongoClient, ServerApiVersion, ObjectId } =
require('mongodb');

const app = express();
const port = process.env.PORT || 5000;

// middleware
app.use(cors())
app.use(express.json())

Get method Backend:


app.get('/users', async (req, res) => {
            const cursor = usersCollection.find();
            const result = await cursor.toArray();
            res.send(result)
        })

Delete Method Front-end:


fetch('https://example.com/delete-item/' + id, {
            method: 'DELETE',
        })
            .then(res => res.text()) // or res.json()
            .then(res => console.log(res))

Delete method Back-end:


 app.delete('/delete/:id', async (req, res) => {
    const id = req.params.id;
    const query = { _id: new ObjectId(id) };
    const result = await usersCollection.deleteOne(query);
    res.send(result)
   })

Post method Front-end

fetch('http://localhost:5000/users', {
            method: 'POST',
            headers: {
                'content-type': 'application/json'
            },
            body: JSON.stringify(newUser)
        })
            .then(res => res.json())
            .then(data => {
                console.log(data);
                form.reset();
            })

Post method Back-end:


app.post('/users', async (req, res) => {
            const user = req.body;
            const result = await usersCollection.insertOne(user);
            res.send(result);
        });

Update method Front-end:


        fetch(`http://localhost:5000/users/${loadedUser?._id}`, {
            method: 'PUT',
            headers: {
                'content-type': 'application/json',
            },
            body: JSON.stringify(updatedUser)
        })
            .then(res => res.json())
            .then(data => {
                console.log(data);
            })

Update Method Back-end:


 app.put('/users/:id', async (req, res) => {
   const id = req.params.id;
   const requestedUser = req.body;

   const filter = { _id: new ObjectId(id) };
   const options = { upsert: true };
   const updatedUser = {
      $set: {
              name: requestedUser?.name,
              email: requestedUser?.email,
             }
           }

   const result = await usersCollection.updateOn
                  (filter, updatedUser, options);
   res.send(result)
        })




Post a Comment

Previous Post Next Post