💻 Development 408

[TIL] 2020-11-01

💪 Today I Learned 집꾸미기 어플 서버 클론 서브 도메인 각각 ssh 적용 (by Certbot) 회원가입 및 로그인 API 구현 (dev) User 테이블만 생성 후 적용 validation 최대한 어플과 유사하게 Product 관련 DB ERD 설계 상품과 사용자 관련 ERD만 설계했는데 테이블이 너무 많이 만들어진거 아닌가 싶다. 🏃‍♂️ 한마디 reverse proxy 때문에 ssh 적용하는 데 꽤나 애먹었다. URL 뒤에 포트 번호가 붙어있어서 그런지 계속 https 적용이 안됐다. 성공하긴 했지만 기본적인 것에 시간을 쏟아붓지 않았나 싶다.

[TIL] 2020-10-31

💪 Today I Learned 집꾸미기 클론 코딩 시작 EC2 서버 구축 OS : ubuntu 18.04 Web server : nginx 1.14.0 Back-end language : node 14.15.0 Database : mysql 5.7.32 개발용(dev) / 배포용(prod) 각각 서브 도메인 적용 🏃‍♂️ 한마디 소프트 스퀘어드 6주차까지의 교육을 마치고 모의 외주 기간이 시작됐다. 집꾸미기 라는 어플을 배정 받았고 당연히 서버 포지션을 맡았다. 기획서 작성하기 전에 앱을 쓱 봤는데 브런치와는 비교도 안되게 어려워보여서 2주동안 할 수 있을지 걱정이 앞섰다. 클라 작업이 뒤쳐지지 않도록 열심히 API 만들어서 줘야겠다.

[TIL] 2020-10-28

💪 Today I Learned Transaction 데이터베이스의 상태를 변환시키는 작업 수행의 논리적 단위 ACID 특성 원자성 (Atomacity) : All or Nothing 일관성 (Consistency) : 트랜잭션 완료 시 일관적인 데이터베이스 상태 유지 격리성 (Isolation) : 트랜잭션끼리 서로 간섭 X 지속성 (Durability) : 성공적으로 수행된 트랜잭션은 영원히 반영 🏃‍♂️ 한마디 Brunch 어플에서 유일하게 트랜잭션 처리를 해줘야 하는 부분이 있었다. 바로 조회한 게시글이 사용자의 최근 본 글 목록에 들어가는 것이다. 나는 트랜잭션 시작하는 부분과 commit/ rollback을 각각 함수로 만들어서 구현했는데 알고보니 맞지 않은 코드였다. 각 함수마다 디비 커넥션..

[TIL] 2020-10-27

💪 Today I Learned Brunch API 현황 홈 화면 조회 API path-variable 삭제 홈 화면에서 보여질 게시글 수를 {count}로 전달 -> php 내에서 배열에 저장해 랜덤으로 쿼리에 전달 API 출력 결과 변경 아래 사진처럼 리스트 형태로 뜨는 값들 묶어줬다. 회원가입 API 구현 사실 Brunch 어플은 카카오 계정으로 로그인 기능만 가능하다. 그래서 임의로 이메일과 패스워드를 통해 회원가입 가능하도록 작성했다. 이메일 / 패스워드 / 핸드폰 번호 각각 정규표현식 적용해 validation 처리 Transaction 적용 COMMIT : 게시글 조회 성공 시 최근 본 글 과 최근 본 작품 목록에 각각 들어가도록 ROLLBACK : 게시글 조회 실패 시 🏃‍♂️ 한마디 오늘..

[TIL] 2020-10-26

💪 Today I Learned Brunch API JWT 적용 홈 화면 조회 API를 제외한 모든 API에 올바르지 못한 토큰으로 요청이 올 경우 전부 막아줬다. 그리고 기존 코드에서 나에 해당하는 userId 를 쿼리문에 직접 대입시켜 작성한 것을 JWT를 복호화하여 로그인한 사용자의 userId 로 수정했다. 이해하기 어렵게 설명한 것 같아 예시를 더하겠다. 로그인한 사용자(나)의 userId 가 1이라고 가정해보자. 기존에는 특정한 게시글에 좋아요 눌렀는지의 여부를 보여줄 때 쿼리에 나를 명시적으로 넣어줬다. SELECT likeStatus FROM LikePost WHERE userId = 1; 이 userId 를 JWT payload 부분에 넣어 토큰을 발급했고, 이것을 다시 복호화하여 사용했..