Gidhub BE Developer

ContentNegotiatingViewResolver 알아보기

2019-03-24
goodGid

ContentNegotiatingViewResolver

  • ContentNegotiatingViewResolver는 ViewResolve 중 하나이다.


  • AcceptHeader에 따라 응답이 달라진다.

  • ex) accept(MediaType.APPLICATION_JSON_UTF8)


  • AcceptHeader는

  • “브라우저가 어떤한 타입의 본문을 응답을 원한다”를 서버한테 알려준다.


  • ContentNegotiatingViewResolver는

  • 어떤 요청이 들어오면

  • 그 요청에 응답을 만들 수 있는 모든 View를 찾는다.

  • 그리고 최종적으로

  • 그 AcceptHeader랑 비교해서 해당 View를 Return한다.

  • 간혹 AcceptHeader가 없는 요청이 있다.

  • 그런 경우를 대비해서 format이라는 Parameter를 사용한다.

  • ex) “/path?format=pdf”


Reference


Recommend

Index