>  기사  >  Java  >  Spring MVC에서 @ResponseBody를 사용하여 HTTP 오류 코드를 반환하는 방법은 무엇입니까?

Spring MVC에서 @ResponseBody를 사용하여 HTTP 오류 코드를 반환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-03 05:59:03302검색

How to Return HTTP Error Codes with @ResponseBody in Spring MVC?

Spring MVC @ResponseBody 메서드에서 HTTP 오류를 처리하는 방법

Spring MVC @ResponseBody를 사용하여 RESTful API에서 JSON을 반환하는 경우 HTTP 오류를 정상적으로 처리하는 데 필수적입니다. 일반적인 오류 코드 중 하나는 400(잘못된 요청)입니다. 이 오류 코드는 누락되거나 잘못된 매개변수로 인해 요청이 유효하지 않음을 나타냅니다.

메서드의 반환 유형이 문자열인 특정 시나리오에서는 ResponseEntity<>를 반환하도록 메서드의 서명을 변경할 수 있습니다. 대신에. ResponseEntity<> 응답 본문과 HTTP 상태 코드를 모두 지정할 수 있습니다.

HTTP 400 오류로 응답하려면 null 본문과 적절한 HTTP 상태 코드가 있는 ResponseEntity를 반환할 수 있습니다. 예는 다음과 같습니다.

<code class="java">@RequestMapping(value = "/matches/{matchId}", produces = "application/json")
@ResponseBody
public ResponseEntity<String> match(@PathVariable String matchId) {
    String json = matchService.getMatchJson(matchId);
    if (json == null) {
        return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
    }
    return new ResponseEntity<>(json, HttpStatus.OK);
}</code>

또는 Spring 4.1에서는 이 프로세스를 더욱 단순화하는 ResponseEntity의 도우미 메서드를 도입했습니다. 이제 다음을 사용할 수 있습니다.

<code class="java">return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);</code>

또는 성공적인 요청을 위해

<code class="java">return ResponseEntity.ok(json);</code>

HTTP 오류를 적절하게 처리하면 RESTful API에서 일관되고 사용자 친화적인 환경을 보장할 수 있습니다.

위 내용은 Spring MVC에서 @ResponseBody를 사용하여 HTTP 오류 코드를 반환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.