복붙노트

[SPRING] 나머지와 함께 부울 값을 반환하는 방법?

SPRING

나머지와 함께 부울 값을 반환하는 방법?

진실 / 거짓 부울 응답 만 제공하는 부울 REST 서비스를 제공하려고합니다.

그러나 다음은 작동하지 않습니다. 왜?

@RestController
@RequestMapping("/")
public class RestService {
    @RequestMapping(value = "/",
        method = RequestMethod.GET,
        produces = MediaType.APPLICATION_XML_VALUE)
    @ResponseBody
    public Boolean isValid() {
        return true;
    }
}

결과 : HTTP 406 :이 요청으로 식별 된 자원은 요청 "수락"헤더에 따라 수용 할 수없는 특성을 갖는 응답 만 생성 할 수 있습니다.

해결법

  1. ==============================

    1.@ResponseBody를 제거 할 필요가 없습니다. MediaType을 제거했을 수 있습니다.

    @ResponseBody를 제거 할 필요가 없습니다. MediaType을 제거했을 수 있습니다.

    @RequestMapping(value = "/", method = RequestMethod.GET)
    @ResponseBody
    public Boolean isValid() {
        return true;
    }
    

    이 경우 application / json으로 기본값이 설정되므로이 작업도 가능합니다.

    @RequestMapping(value = "/", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
    @ResponseBody
    public Boolean isValid() {
        return true;
    }
    

    MediaType.APPLICATION_XML_VALUE를 지정하면 실제로 XML에 직렬화 할 수 있어야합니다.

    또한 응답에서 단순한 사실을 원한다면 XML이 아닌가?

    특별히 text / plain을 원하면 다음과 같이 할 수 있습니다 :

    @RequestMapping(value = "/", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE)
    @ResponseBody
    public String isValid() {
        return Boolean.TRUE.toString();
    }
    
  2. from https://stackoverflow.com/questions/28828896/how-to-return-a-boolean-value-with-rest by cc-by-sa and MIT license