개요

nest.js 기반의 백엔드 서버

현재 공부중

REST API

API 명세서

데이터 제공 방식

위 요구 사항을 고려하였을 때 가장 이상적인 구현 방식은 아래와 같음

  1. 백엔드 서버에서 주기적으로 외부 API에 요청하여 DB에 데이터 저장(최신화)
  1. 사용자는 DB에서 데이터를 제공 받음
  2. 특별한 상황으로 수동 갱신 필요 시 관리자가 직접 DB 최신화

NestJS의 schedule/cron 패키지 사용하여 스크립트 자동화 가능

현재로써는 급식식단의 경우 매일, 시간표는 매주, 학사일정은 매달 갱신하는 것이 좋아보임

DTO

Data Transfer Object 로써 클라이언트와 서버간 통신시 데이터를 전달하는 객체를 의미함

전달할 데이터의 일관된 형식을 유지하여 유연하게 활용할 수 있도록 하기 위함

export class GetMealDto {
    @ApiProperty({ description: "학교 코드" })
    @IsString()
    @IsNotEmpty()
    school_code: string;

    @ApiProperty({ description: "날짜(yyyyddmm)" })
    @IsString()
    @IsNotEmpty()
    date: string;
}