Regardons le contrôleur avec le point de terminaison ci-dessous :
@RestController @RequestMapping("v1/hello") public class ExampleController { @GetMapping public ResponseEntity<String> get() { return ResponseEntity.ok("Hello World!"); } }
Lors de l'utilisation de l'annotation @RestController de Spring, par défaut les réponses sont placées dans le corps des réponses, il est inutile d'utiliser ResponseEntity en tapant le retour de la méthode, juste le type de réponse directement, comme dans l'exemple ci-dessous :
@RestController @RequestMapping("v1/hello") public class ExampleController { @GetMapping public String get() { return "Hello World!"; } }
De plus, par défaut, en cas de succès, le code de statut utilisé dans les endpoints est 200 (OK), c'est-à-dire qu'il n'est nécessaire de le changer que lorsque vous souhaitez utiliser un autre statut, et pas ResponseEntity doit être utilisé, utilisez simplement l'annotation @ResponseStatus méthode ci-dessus :
@RestController @RequestMapping("v1/hello") public class ExampleController { @GetMapping @ResponseStatus(HttpStatus.ACCEPTED) public String get() { return "Hello World!"; } }
Alors pourquoi ResponseEntity existe-t-il ?
Dans les cas où vous devez ajouter plus d'informations à la réponse que le corps et le statut, comme l'ajout d'un en-tête à la réponse :
@RestController @RequestMapping("v1/hello") public class ExampleController { @GetMapping public ResponseEntity<String> get() { return ResponseEntity.ok() .header("X-Test", "Blabla") .body("Hello World!"); } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!