Можно ли настроить spring-openapi для создания предсказуемого вывода порядка в v3 api-docs? - PullRequest
0 голосов
/ 13 июля 2020

При создании вывода для springdo c OpenAPI v3 api-docs любое небольшое изменение приведет к тому, что это приведет к совершенно иному порядку в сгенерированных v3 документах api.

Было бы удобно сохранить это порядок предсказуем, особенно для отладки при использовании вывода .yaml. По этой причине, если кто-нибудь знает, как это можно заказать, я был бы признателен.

1 Ответ

2 голосов
/ 02 августа 2020

springdo c -openapi основан на объектах io.swagger.v3.oas.models.OpenAPI.

Элементы Paths имеют тип LinkedHashMap, и порядок сохраняется при использовании этого типа. Если вы объявляете все свои параметры в определенном порядке, используя аннотацию @Parameters или @Operation, порядок будет сохранен.

У вас также есть некоторые свойства на стороне swagger-ui. Например:

springdoc.swagger-ui.operationsSorter=method
springdoc.swagger-ui.tagsSorter=alpha

Для отладки / тестирования / сравнения результатов вы можете использовать библиотеку JSONAssert для сравнения.

И, наконец, вы можете использовать OpenAPICustomiser для сортировки как wi sh всех элементы объекта OpenAPI.

...