Notice
Recent Posts
Recent Comments
Link
스토리지
[06.10] Router 제작 본문
const express = require("express");
const router = express.Router();
router.get("/:id", (req, res, next) => {
const id = req.params.id;
if (id === "all") {
next("route");
} else res.end(`단일회원 검색 -> id: ${id}`);
});
router.get("/all", (req, res, next) => {
res.end("모든 회원 검색");
});
router.post("/", (req, res, next) => {
res.end("회원 등록");
});
router.post("/auth", (req, res, next) => {
res.end("회원 인증");
});
router.delete("/", (req, res, next) => {
res.end("회원 탈퇴");
});
router.patch("/", (req, res, next) => {
res.end("회원 수정");
});
module.exports = router;
- /all 로 접근시에 id에 막혀버리기에 id가 all이면 다음 router로 보내버리게 하였다.
- 기본 틀만 제작
const express = require("express");
const usersRouter = require("./routes/users");
const app = express();
const port = 3000;
app.use(express.json());
app.use("/users", usersRouter);
app.get("/", (req, res) => {
res.end("hello world~~~~~~");
});
app.listen(port, () => {});
1. 회원등록
router.post("/", (req, res, next) => {
let user = req.body;
user["id"] = uuidv4();
user["password"] = SHA256(user["password"]).toString();
users.push(user);
console.log(users);
res.end("200");
});
- req.body로 json데이터를 받아오기
- user란 객체에 id 생성
- password를 SHA256를 암호화
- users배열에 user을 삽입
- 200을 보냄으로서 성공적으로 끝냄;
2. 회원검색
router.get("/:id", (req, res, next) => {
const id = req.params.id;
let user = users.find((x) => x.id === id);
let result = {
status: 200,
user,
};
if (user === undefined) {
result.status = 500;
}
res.send(result);
});
const express = require("express");
let SHA256 = require("crypto-js/sha256");
const { v4: uuidv4 } = require("uuid");
const router = express.Router();
let users = []; //user의 정보를 저장하는 배열
router.get("/all", (req, res, next) => {
res.send(users);
});
router.get("/:id", (req, res, next) => {
const id = req.params.id;
let user = users.find((x) => x.id === id);
let result = {
status: 200,
user,
};
if (user === undefined) {
result.status = 500;
}
res.send(result);
});
router.post("/", (req, res, next) => {
let user = req.body;
user["id"] = uuidv4();
user["password"] = SHA256(user["password"]).toString();
users.push(user);
console.log(users);
let result = {
status: 200,
};
res.send(result);
});
router.post("/auth", (req, res, next) => {
let afterValue = req.body;
let user = users.find((x) => x.email === afterValue["email"]);
let result = {
status: 200,
};
const idx = users.indexOf(user);
if (idx <= -1) {
result.status = 500;
}
res.send(result);
});
router.delete("/", (req, res, next) => {
let afterValue = req.body;
let user = users.find((x) => x.email === afterValue["email"]);
const idx = users.indexOf(user);
if (idx > -1) {
users.splice(idx, 1);
}
let result = {
status: 200,
users,
};
if (user[idx] === undefined) {
} else {
result.status = 500;
}
res.send(result);
});
router.patch("/", (req, res, next) => {
let afterValue = req.body;
let user = users.find((x) => x.email === afterValue["email"]);
user["nickname"] = afterValue["nickname"];
let result = {
status: 200,
user,
};
if (user === undefined) {
result.status = 500;
}
res.send(result);
});
module.exports = router;
'Node.js' 카테고리의 다른 글
[06.15] Database 기본 - 02(Update & Delete) (0) | 2021.06.15 |
---|---|
[06.11] Database - 01 기본 (0) | 2021.06.11 |
[06.09] express generator가 아닌 깡으로 시작 (0) | 2021.06.09 |
[06.09] 소셜 로그인 01 - postman (0) | 2021.06.09 |
[06.08] express 웹 서버 (0) | 2021.06.08 |
Comments