[TIL][codecamp] 프로젝트 9일차 회고

조혜인·2022년 9월 14일
0

팀 프로젝트

목록 보기
9/15

🥸 오늘의 내 상태

  • 오 이제 조금씩 여유로워졌어!! 다음주부터 막차에서 탈출이닷!!! 🚇

📚 오늘 한 일

데이터 보완하기

  • 전날(9/7 수요일) 중간점검을 통해 보완할 점들을 바탕으로 작업을 진행하였다. 가장 먼저 메인이 되는 게시물 테이블에 행사날짜, 시간과 마감날짜 란이 각각 있는데, 행사날짜와 시간을 합친 것이 곧 마감날짜가 되어 굳이 동일한 데이터가 중복으로 있어야 할 필요성이 있을까에 대한 고민을 하였다. 원래는 마감날짜 하나였지만 프론트분들이 개발하시면서 데이터를 날짜와 시간으로 분리하였으면 좋겠다는 의견을 받아 나누었던 것인데, 백엔드 입장에서는 중복 데이터가 저장되는 것이므로 팀원들과 고민 끝에 마감날짜 하나만 가지고 있기로 하고 프론트 측에서 날짜와 시간이 분리되어서 들어오면 우리가 직접 합쳐서 마감날짜를 Date로 만들어 저장하기로 하였다. 앞으로의 개발에서도 프론트와 백엔드 모두 서로의 요청사항을 충족할 수 있는 방향을 잡아나가는 것은 굉장히 중요한 과제가 될 것 같다.

API 구현(러너🏃‍♂️의 성공률을 반영하자!)

  • 처음 구상했던 와이어 프레임에는 따로 러너의 성공률에 대한 데이터를 반영하지 않았었다. 그런데 디자이너 분의 손길을 거치면서 러너의 성공률을 나타내는 부분이 추가되었는데, 우리가 구현하고자 하는 시스템은 유저가 러너를 선택하는 구조로써 러너의 성공률은 유저에게 더 믿음을 주는 포인트가 될 수 있을 것 같아 성공률을 반영하기로 하였다. 성공률은 유저가 러너를 rating하면 성공한 것이므로 다음과 같은 계산식을 사용하여 성공률을 구하였다.

    ((1 / 유저가 거래한 총 횟수) x 성공한 거래 횟수) x 100(백분율) = 성공한 거래율

  • 추석 전까지 거의 대부분의 API들을 모두 끝마쳤다!! 이제 남은 API는 알림이다! 원래는 실시간 알림으로 구현하려고 하였으나 팀 회의 끝에 종모양 버튼을 눌렀을 때 알림이 보이게 하는 구조로 진행하기로 하여서 실시간 까지는 필요가 없을 것 같다. 우리가 가지고 있는 DB를 활용하여 알림을 구현해보아야겠다.(만약 시간이 남는다면 실시간 알림을 한 번 도전해보는 걸로!)

속썩였던 refreshToken

  • refreshToken을 발급한 후 브라우저의 쿠키에다가 저장하였었는데, 자꾸 브라우저를 새로고침 하였을 때 refreshToken이 사라지는 현상이 발생되었다. Graphql에서 API를 테스트하면 사라지지 않는 걸 확인하였는데 당최? 왜!! why!!! 처음에는 아예 로그인 이후에 refreshToken이 보이지 않는다고 생각하여 쿠키에 저장하는 로직과 관련하여 이것저것 구글링을 통해 다양한 코드들을 보고 어떤 일을 해주는 지 이해하고 적용시키며 기존 코드 대비 정말 많이 시도하였다. 그런데 알고보니 특정 페이지에서는 refreshToken이 살아있는 것을 확인하였고, 로그인 또한 풀리지 않고 잘 유지가 되어서 어딘가에는 살아있다!!라는 것을 깨닫고 보니 query구문이 있는 곳에서만 refreshToken이 보이는 것을 확인하였다. mutation만 있는 페이지에는 우리가 작성해주는 부분이어서 아직 graphql을 통해 통신을 수행하지 못하여서 그런건가.. 이 부분에 대해서는 조금 더 확인해야할 것 같다. 최소한 refreshToken이 설정이 아예 잘못된 것은 아니라는 것을 알게되어 조금 마음이 편안해졌다.🫠
profile
코딩은 역시 재밌군

0개의 댓글