작성
·
275
0
안녕하세요 영한님 강의 매우매우 잘 듣고 있습니다.
/mapping-produce 설명을 해주실 때 produces ="text/html"로 세팅하서 예제를 보여주셨고, "text/html"이 아닌 다른 형태로 request 날릴 때 406 에러가 나는걸 보여주셨어요
제가 이것 저것 해보다가 "text/plain"으로 날리니까 406 에러 가 발생하지 않고
2021-06-03 23:46:45.944 WARN 67555 --- [nio-8080-exec-4] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]
이런 warning이 뜨던데 "text/plain"으로 요청 날렸을 땐 왜 406에러가 발생하지 않는지 궁금합니다.
관련해서 알고 계신 부분이 있으시면 간단하게나마 알려주시면 감사하겠습니다.
매번 강의 들으면서 감사함을 느낍니다 ㅠㅠ 앞으로도 좋은 강의 많이 부탁드립니다
답변 1
2
안녕하세요. 베지밀님
accept=text/plain으로 요청시 HTTP 응답 코드는 동일하게 406이 발생합니다.
응답 데이터는 비어있지만, 화면에 잘 보시면 Status 라는 부분이 406인 것을 확인할 수 있습니다.
오류 메시지가 추가로 보였던 것은
accept가 application/json의 경우 JSON 형태의 오류 메시지를 스프링 부트가 자동으로 생성해서 전달해주는 추가 기능을 제공합니다.
text/plain의 경우 스프링 부트가 이런 기능을 제공하지 않습니다.
감사합니다.