sprin test를 사용하다가 로그에 request의 body(특정 json)가 안나오는 문제가 있다.
MockHttpServletRequest:
HTTP Method = POST
Request URI = /api/1/city/
Parameters = {}
Headers = [Accept:"application/json"]
Body = <no character encoding set>
Session Attrs = {}
그래서 코드에 characterEncoding을 추가했더니 문제가 발생하지 않았다.
ResultActions result =
mockMvc.perform(post("/api/1/city/", 10L)
.accept(MediaType.APPLICATION_JSON)
.characterEncoding("utf-8")
.content(requestJson))
.andDo(print());
다음과 같이 request의 body 정보가 출력되었다.
MockHttpServletRequest:
HTTP Method = POST
Request URI = /api/1/city/
Parameters = {}
Headers = [Accept:"application/json"]
Body = {
"id" : 10,
"name" : "Bratislava",
"population" : 432000
}
Session Attrs = {}