Skip to content

개발하기

Hyomin Koo edited this page Sep 10, 2022 · 1 revision

요구사항

개발 진행을 위해서는 아래와 같은 사항이 필요합니다.

  1. 서비스 배포#배포 준비 에서 진행한 배포 준비 단계
  2. 실시간 서버 테스트를 위한 Docker 설치
  3. 명령어 실행을 위한 concurrently, cross-env 설치

Docker 설치

Windows

공식 사이트 에서 설치 파일을 다운로드 받아 설치할 수 있습니다.

macOS

Homebrew를 이용하여 간편하게 설치하실 수 있습니다.

brew install --cask docker

concurrently, cross-env 설치

다음 명령어를 실행하여 설치합니다:

pnpm add -g concurrently cross-env

ℹ️ 정보

해당 명령은 패키지를 전역으로 설치합니다. 이미 해당 패키지가 전역으로 설치되었다면 설치할 필요가 없습니다.

개발 서버 실행

다음 명령어를 실행하여 개발 서버를 실행할 수 있습니다:

cross-env ADMIN_ID=20XXXXXX pnpm dev

⚠️ 경고

ADMIN_ID=20XXXXXX 는 최고 관리자의 학번을 설정합니다. 개발 서버는 매번 실행마다 정보가 초기화되므로 해당 정보를 설정하지 않으면 로그인 및 설정이 불가할 수 있습니다!

ℹ️ 정보

AWS Serverless Model 플랫폼의 특성상 API 요청을 하는 데 5~10초 정도의 긴 시간이 걸립니다. 이는 정상적인 동작입니다.

서버가 실행되면 클라이언트(프론트엔드)의 경우 5002번 포트(http://localhost:5002)에서, 서버(백엔드)의 경우 3000번 포트(http://localhost:3000) 에서 실행됩니다.

기본 설정 파일 추가

개발 서버는 기본적으로 아무런 데이터를 가지고 있지 않은 상태입니다. 따라서 편리한 데이터 추가를 위해 <workspace root>/config.json 에서 예제 데이터를 제공하고 있습니다. configs 키 아래의 Config 오브젝트를 복사하여 /api/v1/config/update 엔드포인트의 body 로 POST 요청을 보내면 쉽게 설정을 추가할 수 있습니다.

OpenAPI Docs 를 통해 설정 추가

세션을 가져오고 요청을 보내 설정을 추가하는 작업이 어렵게 느껴질 수 있습니다. 따라서 제공되는 OpenAPI Docs을 활용하여 쉽게 설정을 추가할 수 있도록 합니다.

  1. 최고 관리자의 ID로 서비스에 로그인합니다.

  2. 브라우저의 개발자 도구를 사용하여 locker_session 쿠키 값을 가져옵니다.

image

  1. 복사한 쿠키 값을 OpenAPI Docs 페이지에 우상단 Authorization 아래 UserSessionAuth 에 입력하고 Authorize 를 누릅니다.

image

image

  1. 좌상단 Servers 에서 http://localhost:3000/api/v1 - 로컬 테스트용 주소 을 선택합니다.

image

  1. 아래의 /config/update 탭을 선택하고, Try it out 버튼을 눌러 요청 창을 엽니다.

image

  1. Request body 안의 값을 지우고 config.json 에서 가져온 `config 값을 붙여넣습니다.

image

  1. Execute 버튼을 누른 뒤, 아래에 서버가 200 OK 응답을 할 때까지 기다립니다.

  2. 관리 페이지를 새로고침하여 입력한 설정이 잘 저장되었는지 확인합니다.

ℹ️ 정보

해당 작업을 수행하지 않고 관리 페이지를 통해서도 설정을 추가할 수 있습니다.