인프런 커뮤니티 질문&답변

토니님의 프로필 이미지
토니

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

HTTP 메시지 컨버터

단순 Json 데이터 보내기와 ResponseEntity<>로 감싸는 차이점

작성

·

620

0


=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
안녕하세요 mvc 1편 강의를 통해

Json형식으로 보내는 법에 대해 배웠는데요.

1)public String xxmethod1() {

return "보낼 데이터"

}

2)public 객체 xxmethod2(){

객체 = new 객체();

객체.setSometing('xx');

return 객체

}

3) public ResponseEntity<객체> xxmethod2(){

return ResponseEntity<>(객체, 상태코드);

}

위와 같은 예시를 들겠습니다.

질문 1.

만약 프론트가 CSR이라면 JSON으로 대부분 백으로 데이터 요청을 한다고 알고있습니다.

CSR은 프론트 프레임워크로 만든 페이지 안의 빈칸에

그냥 데이터를 채워 넣는 것이라면 결과적으로 1번과 2번은 차이가 없는 것 아닌가요?

질문 2.

3)은 ResponseEntity로 한 번 감싸서 객체를 보내는 것인데 위의 2번과 결과는 동일하지만 상태코드를 보내는 것인데, 상태코드를 개발자가 직접 조작하는 것이 좋은 일인가요?

질문 3.

  • 질문2처럼 상태코드를 개발자가 직접 조작하였지만 200 OK가 아닌 요청 시 에러가 나도 서버에서

    200 OK 상태코드를 전송하는 것 아닌가요?

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 성민님

질문 1: 1번은 문자를 응답하는 것이고 2번은 JSON으로 응답하는 것입니다. 물론 1번의 보낼 데이터를 JSON으로 직접 변경한 다음에 보내면 같은 결과입니다.

질문2: 애플리케이션 오류가 아니라면 상태코드를 직접 변경하는 일이 자주 있지는 않습니다. 하지만 비즈니스 상황상 예외적으로 적용해야 한다면 직접 상태코드를 입력해야 합니다.

질문3: 오류가 발생하면 보통 해당 코드 자체가 수행되지 않습니다. 따라서 해당 코드에 정의한 부분이 의미가 없어집니다.

감사합니다.

토니님의 프로필 이미지
토니
질문자

깔끔한 답변 감사합니다!!

토니님의 프로필 이미지
토니

작성한 질문수

질문하기