회원가입&로그인 실습_TIL_11.10

송철진·2022년 11월 10일
0

후기

과제3을 끝내지 못한 상황에서
회원가입signup은 할 수 있으나 로그인signin은 동작하지 않으므로
위코드 깃허브에서 트레이닝 소스코드를 클론하고 실행해보았다
백엔드인 내가 할 일은 서버를 켜고 프론트엔드가 회원가입 요청을 보내면 상태코드 확인 및 DB에 저장된 값을 확인하는 것
아직 학습하지 못한 layered pattern으로 짠 코드이기에 이해하기 어려운 것은 당연한 것일지도 모르지만
jwt토큰 검증 과정을 직접 짠 코드로 확인해보지 못했기에 더욱 뒤쳐져있다는 느낌이 강하게 들어서 부담감이 크다

순서

  1. 빈 디렉토리 생성 및 들어가서 깃 클론한다
cd desktop
mkdir auth
cd auth
git clone (복사한 깃허브 주소)
  1. pakage.json 설치
$ npm install 
  1. .env파일 생성 및 내용 입력
touch .env

  1. 데이터베이스 이름에 맞게 생성하고 dbmate 실행하기
$ mysql -u root -p	# mysql 접속하기
					# mysql 비밀번호 입력
mysql> create database expressAuth; 	# 데이터베이스 생성하기
mysql> use expressAuth; 	# 데이터베이스 사용하기
$ dbmate up			# dbmate 업로드 실행
  1. 서버 실행하고 프론트엔드에게 내 ip주소 알려주기
$ npm start			# API서버 실행하기
$ ipconfig getifaddr en0	# 내ip주소 확인하기
  1. 프론트엔드의 회원가입 요청을 받으면 mysql에서 테이블 확인하기
mysql> SELECT * FROM users;

문제 해결 방법: console.log() 찍어보기

에러모음

프론트엔드가 회원가입signup을 요청했을 때:

  • 상태코드 400 Bad Request
  • 원인: email, password를 입력받아야 하는데 id, password가 body에 담겨있어서

email 양식에 맞게 작성하지 않아서 400에러가 발생했다

email입력 양식에 맞게 썼는데 400 에러가 발생했다. 왜일까?
👉 이미 등록된 email이라서,
👉 로그인하려는 의도였다면 프론트엔드에서 url을 /signin으로 바꿔야 한다

로그인 성공

로그인 실패

profile
검색하고 기록하며 학습하는 백엔드 개발자

0개의 댓글