express

PHOTO EMBED

Sun Apr 06 2025 17:48:04 GMT+0000 (Coordinated Universal Time)

Saved by @exam3

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const PORT = 3000;

app.use(bodyParser.json());

let users = [
    { id: 1, name: "Alice", email: "alice@example.com" },
    { id: 2, name: "Bob", email: "bob@example.com" }
];

// CREATE
app.post('/users', (req, res) => {
    const user = req.body;
    user.id = users.length + 1;
    users.push(user);
    res.status(201).send(user);
});

// READ all users
app.get('/users', (req, res) => {
    res.send(users);
});

// READ single user
app.get('/users/:id', (req, res) => {
    const user = users.find(u => u.id == req.params.id);
    res.send(user || {});
});

// UPDATE
app.put('/users/:id', (req, res) => {
    const id = req.params.id;
    const index = users.findIndex(u => u.id == id);
    if (index !== -1) {
        users[index] = { ...users[index], ...req.body };
        res.send(users);
    } else {
        res.status(404).send({ error: "User not found" });
    }
});

// DELETE
app.delete('/users/:id', (req, res) => {
    const id = req.params.id;
    users = users.filter(u => u.id != id);
    res.send({ message: "User deleted" });
});

app.listen(PORT, () => {
    console.log(`Server running on http://localhost:${PORT}`);
});
content_copyCOPY