Adjon meg egy karakterlánc-tömböt törzsparaméterként a Swagger-ben
1. Áttekintés
A Swagger a REST API-k dokumentálására és leírására szolgáló specifikációk összessége. Ezenkívül példákat ad a végpont paramétereire.
Ebben az oktatóanyagban megmutatjuk, hogyan állítsunk elő egy alapértelmezett példaértéket Húr tömbök, mivel ez a viselkedés alapértelmezés szerint nincs engedélyezve.
2. Adjon meg egy karakterlánc-tömböt törzsparaméterként a Swaggerben
A kérdés akkor merül fel, amikor a Strag tömböt meg akarjuk adni törzsparaméterként a Swaggerben.
A Swagger alapértelmezett példaértéke kissé átlátszatlan, amint azt a Swagger szerkesztőben láthatjuk:
Tehát itt azt látjuk, hogy Swagger nem igazán mutat példát arra, hogy a tömb tartalmának hogyan kell kinéznie. Nézzük meg, hogyan adhatunk hozzá egyet.
3. YAML
Először a stringek tömbjének megadásával kezdjük a Swaggerben a YAML jelölés használatával. A séma szakaszban felvesszük típus: tömb val vel elemek Húr.
Az API jobb dokumentálásához és a felhasználó utasításához használhatjuk a példa az értékek beszúrásának címkéje:
paraméterek: - itt: törzsleírás: "" kötelező: igaz név: név séma: típus: tömb elemek: típus: karakterlánc példa: ["str1", "str2", "str3"]
Nézzük meg, hogy a kijelzőnk most hogyan informatívabb:
4. Springfox
Vagy ugyanazt az eredményt érhetjük el a Springfox segítségével.
Használnunk kell a adattípus és példa az adatmodellben @ApiModel és @ApiModelProperty kommentárok:
@ApiModel public class Foo {private long id; @ApiModelProperty (név = "név", dataType = "Lista", példa = "[\" str1 \ ", \" str2 \ ", \" str3 \ "]") privát Lista neve;
Ezt követően meg kell jegyeznünk a Vezérlő hogy Swagger az adatmodellre mutasson.
Tehát, használjuk @ApiImplicitParams azért:
@RequestMapping (metódus = RequestMethod.POST, value = "/ foos") @ResponseStatus (HttpStatus.CREATED) @ResponseBody @ApiImplicitParams ({@ApiImplicitParam (név = "foo", érték = "Karaktersorozatok listája", paramType = " ", dataType =" Foo ")}) public Foo create (@RequestBody final Foo foo) {
És ez az!
5. Következtetés
A REST API-k dokumentálásakor lehetnek paramétereink, amelyek string tömbök. Ideális esetben ezeket dokumentálnánk a Példaértékekkel.
Megtehetjük ezt Swaggerben a példa ingatlan. Vagy használhatjuk a példa annotation attribútum a Springfox-ban.
Mint mindig, a kód elérhető a GitHubon.