✨ver1의 설계로 DB, Node.js 코드 구현해보기
Node.js 패키지(파일) 구조
app.js는 프로젝트의 메인 라우터 역할
routes안의 파일들은 하위 라우터 역할
💢하지만 지금 파일 구조는 하위 라우터 안에서 경로역할 뿐만아니라 로직까지 구현되어있다. 안되는건 아니지만, 파일 하나에 코드가 길어질수록 유지보수가 어려워지므로 코드구현된 부분은 다른 파일로 나눠서 모듈화 시키는 것이 좋다❗💢 🔸프로젝트 규모가 커질수록, 코드가 길고 복잡 🔸가독성이 떨어짐 🔸트러블 슈팅 어려움 => 유지보수가 어려움 cf. 유지보수란? 오래된 코드 운영, 요구사한 반영, 에러해결 ... |
컨트롤러
프로젝트에서 매니저 역할을 하는 파일
⬇️컨트롤러에 jwt sign으로 token을 cookie에 넣어 response로 보내준 코드
🗝️암호화하기
node.js에서 기본 내장으로 가지고 있는 crypto를 사용해서 비밀번호를 암호화하기
지금 짜여진 암호화는 단방향 암호화 방식..
✨해결 할 수 있는 방법은 2가지
- salt값을 randomBytes()가 아닌 고정값으로 가지고오기
- salt값을 db에 같이 저장시키기
2번 방법 회원가입시 비밀번호를 암호화해서 암호화된 비밀번호 AND salt 값을 같이 저장 로그인 시, 이메일&비밀번호(비암호화) => salt값 꺼내서 비밀번호 암호화 해보고 db 비밀번호랑 비교 |
POSTMAN으로 잘 들어오는것도 확인❗
초기화 수정에서도 암호화 코드를 구현해준다❗❗
'공부 > 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js)' 카테고리의 다른 글
프로젝트: Node.js 기반의 REST API 구현(7)-book.js-LEFT JOIN, DATE_ADD, DATE_SUB, LIMIT OFFSET (0) | 2024.10.07 |
---|---|
프로젝트: Node.js 기반의 REST API 구현(6)-books.js-method 동일 할 때 query || body || params의 값으로 조건문 판별해서 코드 실행시키기 (0) | 2024.10.04 |
프로젝트: Node.js 기반의 REST API 구현(4)-정리하기 (1) | 2024.10.01 |
프로젝트: Node.js 기반의 REST API 구현(3)-ERD 도움받기 (1) | 2024.09.30 |
프로젝트: Node.js 기반의 REST API 구현(2)-같이 해보기 (2) | 2024.09.27 |