学习 MERN Stack 第 43 天

我今天完成了完整的 CRUD 操作。

昨天我学习了如何使用 req.params 读取数据。今天我学习了如何使用 HTTP POST、PUT 和 DELETE 方法来修改数据。我使用了文件系统来修改我的本地数据库。

编写修改数据的代码需要格外小心。你必须管理好生命周期,以避免损坏你的存储。

以下是我构建 POST 路由的方式:

  • 我使用了 express.json() 中间件来读取传入的请求体 (body)。
  • 我创建了一个带有唯一 ID 的新用户对象。
  • 我将新用户添加到现有数组中。
  • 我使用了 fs 模块将更新后的数组保存到我的 JSON 文件中。

代码如下:

const express = require("express");
const fs = require("fs");
const users = require("./MOCK_DATA.json");
const app = express();

app.use(express.json());

app.post("/api/users", (req, res) => {
    const body = req.body;
    const newUser = { ...body, id: users.length + 1 };
    users.push(newUser);

    fs.writeFile("./MOCK_DATA.json", JSON.stringify(users), (err) => {
        if (err) return res.status(500).json({ error: "Write operation failed" });
        return res.status(201).json({ status: "Success", userId: newUser.id });
    });
});

这一步让我从读取数据转向了管理完整的数据生命周期。

来源:https://dev.to/ali_hamza_589ec7b3eb6688d/day-43-of-learning-mern-stack-1cif