Walidacja enuma w Postmanie

0

Siemka,

Mam za zadanie wykonać walidacje, która będzie sprawdzała w postmanie czy w X umieściłem wartość z enuma, w przeciwnym razie ma wyrzucić Http400.

Najlepiej taką walidacje zrobić w klasie serwisu? i jak można zrobić, aby X sprawdzal wiecej niz jedna wartość enuma w parametrze metody?

1

Załóżmy że masz enum:

public enum MyEnum {

    NAME,
    SURNAME;
}

I masz controller:

@RestController
public class MyRestController {

    @PostMapping("/post")
    public void post(@RequestBody Input input) {

    }

    record Input(String id, MyEnum myEnum) {

    }
}

Teraz jeśli wyślesz posta z wartością:

{
    "id" : "1",
    "myEnum" : "NAME"
}

to dostaniesz 200

a jak wyślesz wartość, której nie da się zamienić na enuma to 400:

{
    "id" : "1",
    "myEnum" : "TEST"
}

response :

{
    "timestamp": "2022-07-15T12:02:22.841+00:00",
    "path": "/post",
    "status": 400,
    "error": "Bad Request",
    "requestId": "174a3fbf-4"
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1