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

woojin126님의 프로필 이미지
woojin126

작성한 질문수

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

안녕하세요 질문하나 하겠습니다

작성

·

117

0

클라이언트,스크립트 딴에서 ajax로 컨트롤러딴에 POST방식이고 json 타입으로 보내면

컨트롤러단에서는 @RequestBody로 받아서

제이슨을 객체형태로바꿔서 사용후 

@ResponseBody를 사용하여 return으로

다시 json 형식을 반환해주는걸로 이해하고있는데요 이러면 화면을 이동하는건 불가능한거겠네요?  리스폰스바디를 사용한다면 뷰리졸버를 작동시킬 방법이 없으니깐용?

2.

GET방식은 JSON타입으로 통신이 안되나요?

BODY부분이 없기때문에?

3.

2번이 된다면 AJAX의 GET방식으로 JSON데이터를 보낸다면 컨트롤러단에서는 어떻게 받아야 하나요?

GET은 바디부분이없어서 @RequestBody가 안먹힐거 같은데욤

4.

답변 1

1

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

안녕하세요. woojin126님

1. 이 경우 뷰리졸버가 작동하지는 않습니다. 대신에 json 형식을 클라이언트에서 받고, 자바스크립트에서 화면을 직접 이동하면 됩니다

2.3. 데이터를 전달할 때는 POST, PUT, PATCH를 사용해주세요.

(그런데 HTTP 스펙에서는 GET에 BODY를 전달하지 말라는 내용은 없습니다. 스프링도 GET에 BODY를 전달해도 POST 처럼 똑같이 받을 수 있습니다. 그런데 문제는 이것을 지원하지 않는 서버들이 많기 때문에 실무에서는 권장하지는 않습니다.)

감사합니다.

woojin126님의 프로필 이미지
woojin126

작성한 질문수

질문하기