Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- dynamic
- loop
- parameter
- UE5
- github
- Algorithm
- 시작해요 언리얼 2022
- W3Schools
- 문제풀이
- Material
- Unreal Engine 5
- String
- dfs
- Class
- 프로그래밍
- c++
- w3school
- 오류
- python
- 백준
- 재귀
- 파이썬
- 기초
- C#
- Unity
- guide
- Programming
- Tutorial
- DP
- Basic
Archives
- Today
- Total
행복한 개구리
Node 수업내용 21.06.10 Node.js - 회원관리 본문

사용할 폴더를 하나 만든다.
그리고 cmd창에서 cd를 이용하여 해당폴더로 경로를 이동시킨 뒤 해당 익스프레스를 이용하자.
오늘 할 일
회원등록
닉네임, 이메일, 패스워드
서벌 할 일
id생성
객체로 만들어서 배열에 추가
응답시 status 200
오류시 500


서순이 중요하다 왼쪽 처럼하면 users의 라우터가 정상적으로 작동을 하여도 내용을 불러올 수가 없다.
왼쪽처럼 했다가 ID값을 불러올 수 없다는 에러가 계속 났다.
따라서 오른쪽 사진처럼 서순을 바꿔주어야 users를 제대로 불러올 수 있다.

const express = require("express");
const router = express.Router();
const { v4: uuidv4 } = require("uuid");
let users = [];
router.get("/all", (req, res, next) => {
res.end("모든 회원 검색");
});
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;
const uuid = uuidv4();
user.id = uuid;
users.push(user);
let result = {
status: 200,
user,
};
user.status = result.status;
res.send(result);
});
router.post("/auth", (req, res, next) => {
const id = req.body.id;
let result = {
status: 200,
id,
};
let user = users.find((x) => x.id === id);
if (user === undefined) {
result.status = 500;
}
res.send(result);
});
router.delete("/", (req, res) => {
let id = req.body.id;
let user = users.find((x) => x.id === id);
console.log("userID : " + user.id + ", status : " + user.status);
delete user.id;
let result = JSON.stringify(user);
res.send(result);
});
router.patch("/", (req, res) => {
let id = req.body.id;
let changingId = req.body.changingId;
console.log(changingId.stringify);
let user = users.find((x) => x.id === id);
user["id"] = changingId;
console.log(JSON.stringify(user));
res.end(JSON.stringify(user));
});
module.exports = router;
* 핵심은 배열.find를 사용하여 해당 유저를 찾아내는 점과 req의 body에서 원하는 속성을 불러오는데에 있다.

patch부분에서 id값을 바꿔보고 body의 내용으로 id의 내용이 바뀔까 싶어서 시도해보았지만 해당 속성의 이름까지 바뀌어버린 모습이다.
ㄴ user['id']같이 속성의 'Key'를 정의해주고 그의 값으로 받아온 body의 내용을 할당해주면 잘 바뀐다.

'Node > 수업내용' 카테고리의 다른 글
| Node 수업내용 21.06.16 Sequelize (0) | 2021.06.16 |
|---|---|
| Node 수업내용 21.06.15 MySQL - CRUD (0) | 2021.06.15 |
| Node 21.06.09 Node.js - Express (0) | 2021.06.09 |
| Node 수업내용 21.06.04 Node.js - Rest API와 라우팅 (0) | 2021.06.04 |
| Node 수업내용 21.06.03. Node.js 입문 - 서버만들기, html 메시지출력, 버튼생성 (0) | 2021.06.03 |