220921~0922_광고 관리 플랫폼 대행사 센터 제작 25_예외 처리 및 에러 페이지 구현

창고·2022년 9월 22일
0

해당 게시글은 개인 프로젝트인 "광고 관리 플랫폼 대행사 센터 제작"
#72 "예외 처리" 이슈를 다루고 있습니다.

1. 진행 사항

(1) 요약

  • AdPlatformException 생성
    • Exception 분류
    • ErrorCode 생성
    • GlobalControllerAdvice 생성
  • Controller / Service 내부 Exception 변경

(2) 세부

  • 다음과 같이 예외를 규정함
    OK(HttpStatus.OK, "ok"),

    AGENT_NOT_FOUND(HttpStatus.NOT_FOUND, "Agent not founded"),
    AGENT_GROUP_NOT_FOUND(HttpStatus.NOT_FOUND, "Agent Group not founded"),
    CLIENT_NOT_FOUND(HttpStatus.NOT_FOUND, "Client not founded"),
    CAMPAIGN_NOT_FOUND(HttpStatus.NOT_FOUND, "Campaign not founded"),
    CREATIVE_NOT_FOUND(HttpStatus.NOT_FOUND, "Campaign not founded"),
    AGENT_EXISTS(HttpStatus.CONFLICT, "Agent exists"),
    CLIENT_EXISTS(HttpStatus.CONFLICT, "Client exists"),
    INVALID_RELATION(HttpStatus.CONFLICT, "Client, Campaign, Creative does not match with each other"),

    BAD_REQUEST(HttpStatus.BAD_REQUEST, "Bad Request"),
    INTERNAL_SERVER_ERROR(HttpStatus.INTERNAL_SERVER_ERROR, "Internal server error");

2. 결과

  • 존재하지 않는 에이전트 조회 시
  • 존재하지 않는 에이전트 그룹 조회 시
  • 존재하지 않는 광고주 조회 시
  • 잘못된 광고주 - 캠페인 - 소재 URI로 접근 시
  • 광고주가 남아 있는 상태에서 에이전트 삭제 요청 시
  • 에러 페이지 임시 구현

3. 미흡한 점

  • API에 대한 Error는 key, result 값으로 표시되나 그 외의 Error (405 Error 등) 은 에러 페이지가 그대로 노출됨
  • 에러 페이지를 구현하려고 하였으나 아직 미숙하여 추후 진행하기로 결정
profile
공부했던 내용들을 모아둔 창고입니다.

0개의 댓글