Моя конфигурация включает в себя: < /h2>
Spring Облачный шлюз < /li>
Springdoc-openapi < /li>
Несколько нисходящих сервисов с их собственной документацией Swagger < /li>
< /ul>
Текущая реализация: < /h3>
Код: Выделить всё
@OpenAPIDefinition
@Configuration
public class OpenAPIConfig {
@Bean
public List apis() {
List groups = new ArrayList();
gatewayProperties.getRoutes().forEach(route -> {
String name = route.getId();
GroupedOpenApi api = GroupedOpenApi.builder()
.group(name)
.pathsToMatch("/" + name + "/**")
.build();
groups.add(api);
});
return groups;
}
}
< /code>
configuration (application.yml): < /h3>
springdoc:
api-docs:
enabled: true
path: /v3/api-docs
swagger-ui:
enabled: true
config-url: /v3/api-docs/swagger-config
urls:
- name: auth-service
url: /auth-service/v3/api-docs
- name: multi-tenant-manager-service
url: /multi-tenant-manager-service/v3/api-docs
Проблема, которую я получаю: < /h2>
Unable to render this definition
The provided definition does not specify a valid version field.
Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: "2.0" and those that match openapi: 3.x.y (for example, openapi: 3.1.0).
< /code>
Что я попробовал: < /h2>
Добавлена BytearrayhttpmessageConverter с поддерживаемыми типами носителей < /li>
< li> Настроенные правильные настройки Cors < /li>
Убедитесь, что все службы 'Конечные точки Swagger доступны
Вопрос:
Как я могу правильно настроить пользовательский интерфейс OpenApi /Swagger в Spring Cloud Gateway в Заполните и отображайте документацию из нескольких микросервисов? Есть ли какие -то конкретные конфигурации или зависимости, которые мне не хватает? что другие могут помочь ответить.>
Подробнее здесь: https://stackoverflow.com/questions/794 ... ultiple-se