2주차에 한일!
완료된 로그인, 회원가입 API를 배포하여 프론트와 연결하는 작업을 했다.
여유가 생겨 회원가입 인증코드 라이브러리(nodemailer)를 추가했다.
회원가입을 하려면 인증코드가 필요하게 되서 번거롭게 됬다.
기획단계에서 socket관련 지식이 없으니 API를 추가한다거나 이벤트 이름을 설정하지 않았었다.
또한, mysql 에 채팅관련한 테이블을 추가했고, 소켓을 배포된 환경과 연결을 시켰다.
메인페이지같은 경우, 프론트에 필요한 데이터를 지속적으로 추가되어
지속적으로 바뀌었다. 그만큼 Mysql을 쿼리문의 Inner Join, 새로운 group 생성하여 다시 적용했다.
Mysql 스케줄러를 통해서 1분마다 게시판 종료시점을 지난 경우, 완료된 상태로 자동화 시켰다.
또한, 이메일로 보내지는 인증코드는 DB에 저장되고 있어 5분마다 삭제되어 DB의 용량이 과부화 되지 않게 하였다.
2주차: 기술적인 이슈와 해결
이슈1. Mysql 에러, Error Code: 1071. Specified key was too long;
Mysql에서 Primary Key(PK)를 여러개 설정 할 수 있다는 말에,
유저 고유번호, 이메일, 닉네임, 심지어 이미지까지 설정을 했다.
하지만, 이미지같은 경우 Varchar(5000)으로 설정해둔 상태였다.
총 PK의 문자길이가 제한이 되어있는데, 그 길이보다 더 길어져서 생긴 문제였다.
이미지를 PK에서 제외하니, 해결되었다.
'개발 이야기 > 항해99' 카테고리의 다른 글
[항해99] 12주차 (실전 5주차) - N빵, 첫번째 배포 (0) | 2022.05.29 |
---|---|
[항해99] 10주차(실전 3주차) - 중간발표 (0) | 2022.05.15 |
[항해99] 8주차(실전 1주차) - HTTPS_crbug 이슈 (0) | 2022.05.01 |
[항해99] 6주차 - CORS 란? (0) | 2022.04.10 |
[항해99] 5주차 - ORM(Object Relational Mapping)이란? (0) | 2022.04.03 |