MERNスタック学習 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