분류 전체보기(262)
-
8. Node 가계부 만들기 [ 유저 기능 (회원 가입) 전송 받은 데이터 유효성 검사 ] - 5
서비스 코드 : https://crispypotato.tistory.com/216 서비스 코드 까지 작성하면 기능 구현은 끝났다 하지만!! 프론트에서 잘못된 데이터를 보내거나 필요 데이터를 빼먹었을 때 버그가 발생한다. 이 때 전송 받고 잘못된 데이터가 들오거나 형식이 잘못됬다는 에러를 보내야 한다. 유효성 검사를 깔끔하고 쉽게 하기 위해 express-validator 라이브러리를 사용한다. express-validator 사용 방법 : https://crispypotato.tistory.com/212 1. /lib/validator.js 파일 생성 2. validator.js 에러처리 코드 작성 Validator에서 에러처리 /lib/validator.js const { validationResult..
2022.05.28 -
7. Node 가계부 만들기 [ 유저 기능 (회원 가입) Service코드 작성 ] - 4
전송 포멧, 에러포멧 설명 https://crispypotato.tistory.com/211 사용 함수 설명 https://crispypotato.tistory.com/214 사용 repository 설명 : https://crispypotato.tistory.com/215 1. 아이디 찾기 /user/:id [ GET ] 설명 - 아이디 찾는 값을 params에서 가져오고 - users.repository.js IdFind()에 해당 유저가 존재 하는지 함수에 넣어서 확인한다. - IdFind() 함수는 async라서 await를 사용해야한다. 결과 id가 존재 하지 않을 때는 * Send() 함수 [ 만들었던 전송포멧 ] 에 넣어 전송한다. id가 존재 할 때는 409 에러를 발생시킨다. //user..
2022.05.28 -
6. Node 가계부 만들기 [ 유저 기능 (회원 가입) repository 코드 작성 ] - 3
https://crispypotato.tistory.com/213 router, service 연결 포스트에 나오듯이 회원가입 부분에서 DB를 요청하는 부분은 중복 아이디 확인, 회원가입이다. 그러므로 아이디 찾기과 회원가입 기능에 대한 repository를 작성 할 것이다. 1. DB 연결 https://crispypotato.tistory.com/210 지난 번 생성 /models/user.js 파일을 require 한다. // routes/users/users.repository.js const Users = require('../../models/user') 2. 아이디 찾기 repository id 값을 받아 DB에 select를 한다. sequlize를 이용하여 실제 sql문을 작성 하지 않고..
2022.05.28 -
5. Node 가계부 만들기 [ 유저 기능 (회원 가입) 필요 함수 구현 ] - 2
https://crispypotato.tistory.com/213 에서는 기본적인 route 연결을 했다 이번 포스트에서는 회원 가입시 필요 함수를 제작한다 1. lib/lib.js 파일안 에 추가적으로 필요 함수 설명 회원 가입이 진행 될 때 비밀번호는 그냥 저장하지 않고 암호화를 진행 한 후 저장한다. 이때 암호방식은 *salt 암호화를 진행 할 것이다. 랜덤한 데이터가 필요하여 salt 생성 함수 CreateSalt()를 생성한다. 단방향 암호화에서 비밀번호 확인을 위해 Password()함수를 생성한다. 2. CreateSalt() 함수 생성 /lib/lib.js const CreateSalt = () => { const salt = Math.round(new Date().valueOf() + M..
2022.05.28 -
4. Node 가계부 만들기 [ 유저 기능 (회원 가입) 구현 ] - 1
생성되는 url /user/:id [ GET ] : 사용중인 아이디가 있는지 확인 /user/signup [ POST ] : 회원 가입 1. /routes/users 폴더 생성 2. 필요 파일 /routes/users에 생성 - 파일 설명 users.route.js : 경로 설정 users.service.js : 실제 비지니스 코드 작성 users.validators.js : 프론트에서 넘어온 값을 유효성 검사 users.repository.js : DB에 데이터를 요청 하고 Service에 데이터 전달 * 사용하는 DB가 변경이 되더라도 service에서는 resistor에서같은 함수를 요청하면 같은 값을 받을 수 있다. * 3. users.route.js 코드 작성 (service 연결) //user..
2022.05.28 -
express 유효성 검사 방법 [ express-validator ]
개발을 진행 할 때 if문 범벅이 되어서 코드 작성이 가독성이 떨어진다. express-validator는 if문 범벅 유효성 검사를 아주 간단하게 유효성 검사를 도와주는 라이브러리다 if문 범벅 예시 if (!index || !stageCheck || !playTime) { console.log('데이터가 없습니다. 1') } else if ( typeof index !== 'number' || typeof stageCheck !== 'string' || typeof playTime !== 'number' ) { console.log('타입 형식을 맞춰주세요, 2') } express-validator 사용 시 const { validationResult, body } = require('express..
2022.05.23