๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
[E-Commerce App with REST API] (14) ์นดํ ๊ณ ๋ฆฌ ์์ฑํ๊ธฐ (POST) & ์นดํ ๊ณ ๋ฆฌ ์์ ํ๊ธฐ (PUT) & ์นดํ ๊ณ ๋ฆฌ ์ญ์ ํ๊ธฐ (DELETE) ๋ณธ๋ฌธ
๐ฉ๐ป ๋ฐฑ์๋(Back-End)/Node js
[E-Commerce App with REST API] (14) ์นดํ ๊ณ ๋ฆฌ ์์ฑํ๊ธฐ (POST) & ์นดํ ๊ณ ๋ฆฌ ์์ ํ๊ธฐ (PUT) & ์นดํ ๊ณ ๋ฆฌ ์ญ์ ํ๊ธฐ (DELETE)
์ง์ง์ํ์นด 2023. 3. 31. 01:16728x90
๋ฐ์ํ
<๋ณธ ๋ธ๋ก๊ทธ๋ Developers Corner ์ ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค :-)>
=> Node.js E-Commerce App with REST API: Let's Build a Real-Life Example!
๐ท ์นดํ ๊ณ ๋ฆฌ ์์ฑํ๊ธฐ (POST)
๐ท ์นดํ ๊ณ ๋ฆฌ ์์ ํ๊ธฐ (PUT)
๐ท ์นดํ ๊ณ ๋ฆฌ ์ญ์ ํ๊ธฐ (DELETE)
๐ท ์ฝ๋
โ controllers/categoryCtrl.js
const Category = require("../models/Category");
const asyncHandler = require("express-async-handler");
const { validateMongodbID } = require("../utils/validateMongodbID");
// ์นดํ
๊ณ ๋ฆฌ ์์ฑํ๊ธฐ
const createCategory = asyncHandler(async (req, res) => {
try {
const newCategory = await Category.create(req.body);
res.json(newCategory);
}
catch (error) {
throw new Error(error);
}
});
// ์นดํ
๊ณ ๋ฆฌ ์์ ํ๊ธฐ
const updateCategory = asyncHandler(async (req, res) => {
const { id } = req.params;
validateMongodbID(id);
try {
const updateCategory = await Category.findByIdAndUpdate(id, req.body, {
new: true,
});
res.json(updateCategory);
}
catch (error) {
throw new Error(error);
}
});
// ์นดํ
๊ณ ๋ฆฌ ์ญ์ ํ๊ธฐ
const deleteCategory = asyncHandler(async (req, res) => {
const { id } = req.params;
validateMongodbID(id);
try {
const deleteCategory = await Category.findByIdAndDelete(id);
res.json(deleteCategory);
}
catch (error) {
throw new Error(error);
}
});
module.exports = {
createCategory,
updateCategory,
deleteCategory,
}
โ routes/categoryRoute.js
const express = require("express");
const { createCategory, updateCategory, deleteCategory } = require("../controllers/categoryCtrl");
const { authMiddleware, isAdmin } = require("../middlewares/authMiddleware");
const router = express.Router();
router.post("/", authMiddleware, isAdmin, createCategory);
router.put("/:id", authMiddleware, isAdmin, updateCategory);
router.delete("/:id", authMiddleware, isAdmin, deleteCategory);
module.exports = router;
728x90
๋ฐ์ํ
'๐ฉโ๐ป ๋ฐฑ์๋(Back-End) > Node js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Comments