Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Qual status se devolve quando um 201 (created) dá erro?

    @PostMapping()
    private ResponseEntity<PartidaDTO> cadastrar(@RequestBody PartidaDTO partidaDTO, UriComponentsBuilder uriBuilder) {
        Partida partida = partidaService.atribuirTimeNaPartida(partidaDTO, partidaDTO.getTimeCasa(), partidaDTO.getTimeVisitante());
        if(partida != null) {
            URI uri = uriBuilder.path("/jogador/{id}").buildAndExpand(partida.getId()).toUri();
            return ResponseEntity.created(uri).body(new PartidaDTO(partida));
        }
        return ResponseEntity.notFound().build();
    }

assim está correto? Se sim, é a melhor forma devolver um 404, ou um 400 seria melhor nesse caso? A motivação para a pergunta foi um teste que fiz: "Ao cadastrar uma partida o usuário não pode cadastrar o mesmo nome para o time da casa e time visitante, caso faça isso devolve um status, mas não sei qual status é melhor para este caso"

2 respostas
solução!

Oi Ivo,

Nesse caso o ideal é devolver código 400, pois foi um erro cometido pelo cliente.

Bons estudos!

Valeu professor!

Obrigado!