본문 바로가기
TIL

TIL내일배움캠프 13주차 CommonResponse

by 율량동박씨 2024. 7. 11.

오늘의 키워드

  • CommonResponse 기능
  • API 응답 일관성

오늘의 내용

CommonResponse 기능

CommonResponse는 API 응답의 일관성을 유지시켜 주는 클래스이다. 다양한 API응답을 통일된 형태로 제공해 클라이언트와 서버 간의 상호작용을 명확하게 해 주고 유지보수성을 높여준다. CommonResponse를 사용하면 클라이언트가 예측 가능하게 응답을 처리할 수 있어 디버깅이 용이해준다.

 

주요 필드 및 설명:

  • requestId: 요청 ID로, 요청이 성공한 경우에만 전달된다
  • returnCode: 반환 코드로, 요청이 성공하면 0, 실패하면 0 이외의 값이 전달된다
  • returnMessage: 반환 메시지로, 요청이 성공하면 success, 실패하면 실패 이유가 전달된다

CommonResponse 클래스 예시:

public class CommonResponse {
    private String requestId;
    private String returnCode;
    private String returnMessage;

    // Constructors, getters, and setters
    public CommonResponse(String requestId, String returnCode, String returnMessage) {
        this.requestId = requestId;
        this.returnCode = returnCode;
        this.returnMessage = returnMessage;
    }

    // Getters and Setters
    public String getRequestId() {
        return requestId;
    }

    public void setRequestId(String requestId) {
        this.requestId = requestId;
    }

    public String getReturnCode() {
        return returnCode;
    }

    public void setReturnCode(String returnCode) {
        this.returnCode = returnCode;
    }

    public String getReturnMessage() {
        return returnMessage;
    }

    public void setReturnMessage(String returnMessage) {
        this.returnMessage = returnMessage;
    }
}

CommonResponse의 활용

  • 일관된 응답 제공: 모든 API 응답을 같은 형태로 포장하여 클라이언트가 쉽게 응답을 처리할 수 있다
  • 에러 처리 단순화: 각 응답에 returnCode와 returnMessage를 포함시켜, 성공과 실패에 대한 처리를 명확히 할 수 있다
  • 디버깅 용이성 향상: requestId를 통해 각 요청을 추적할 수 있어, 디버깅 시 유용하다

API 응답 형식 최적화

  • 자체 설명적 메시지: 모든 API 응답 메시지는 자체 설명적이어야 한다. 이는 서버가 요청을 이해하고 처리하는 데 필요한 모든 정보를 포함해야 한다
  • 상태 코드 사용: HTTP 상태 코드를 사용하여 클라이언트에 응답의 상태를 명확히 전달한다. 예를 들어, 200 OK, 400 Bad Request, 404 Not Found 등의 상태 코드를 사용하여 응답의 성공 또는 실패를 표시한다
  • 캐시 가능 데이터: 응답 데이터를 캐시 가능하게 만들어 서버 부하를 줄이고 응답 속도를 향상시킨다. 이는 클라이언트 측 또는 서버 측에서 캐시를 구현할 수 있다

오늘의 회고

오늘은 CommonResponse 기능에 대해 학습했습니다. API 응답의 일관성을 유지하여 클라이언트와 서버 간의 통신을 명확하게 하고, 유지보수성을 높일 수 있는 방법을 배웠습니다. 이를 실제 프로젝트에 적용하여 API 응답 구조를 통일시킴으로써 개발 효율성을 높여야겠습니다. 또한, 상태 코드와 자체 설명적 메시지 사용, 캐시 가능 데이터를 활용하여 API 응답 형식을 최적화하는 방법도 함께 배웠습니다.