Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 1.71 KB

README.md

File metadata and controls

41 lines (30 loc) · 1.71 KB

605-1-backend

2023-2 동방 자리 이용 웹앱 - 백엔드

Duration

2023.12 ~ 2024.3

Tools

  • environment
    • Express.js
    • MongoDB
  • Version Control
    • Git
  • Cooperation
    • Notion
    • Slack
  • Cloud
    • AWS EC2
    • AWS S3

주요 기능

1. Kakao Social login

passport와 passport-kakao 모듈을 활용하여 카카오 소셜 로그인을 구현했습니다. 로그인 시 토큰 유효성을 검사하는 미들웨어를 삽입하여, 토큰이 있는 경우 발급된 토큰을 클라이언트에 전송하고, 없는 경우 다음 미들웨어로 넘겼습니다.

카카오 로그인 이후 로그인 콜백 단계에서 클라이언트에게 기존 회원인 경우(첫 로그인이 아닌 경우)와 신규 회원인 경우를 나누기 위해 조건부 코드를 작성하였습니다.

다만, 여기서 생각할 점은 refresh token을 활용하여 클라이언트에게 token을 body에 담는 것이 아니라 직접 백엔드에서 Redirect할 때 쿼리스트링으로 전송하는 방식으로도 짜는 방향으로도 수정할 수 있을 것 같다고 생각이 듭니다.

2. 좌석 예약 기능

좌석 예약 신청, 좌석 반납, 좌석 예약 내역 조회 API 작성.

3. 회의 테이블 예약 기능

날짜별 회의 테이블 예약 내역 조회, 회의 테이블 예약 (사용자, 예약 시간 정보) API 작성.

4. 좌석 악용을 위한 신고 기능

혹여나 좌석을 예약민 하고 이용하지 않는 경우에 대한 제재를 위해 신고 기능을 추가했습니다.

5. EC2 서버 무중단 배포를 위한 pm2 모듈 사용

express.js 서버를 로컬 환경에서 돌리기 위해 pm2 모듈을 설치하여 사용하였습니다.