Микросервисы Spring Boot — проблема с маршрутизацией Swagger в шлюзе API. Не удалось загрузить определение API.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Микросервисы Spring Boot — проблема с маршрутизацией Swagger в шлюзе API. Не удалось загрузить определение API.

Сообщение Anonymous »

У меня есть пример микросервиса весенней загрузки, содержащий сервер конфигурации, сервер обнаружения, шлюз API и другие службы.
Я могу читать все файлы application.yml из config-repo, полученного сервером конфигурации.
Я определил swagger в шлюзе API, за исключением его определения в других службах.
Я могу получить доступ к Swagger через http://localhost:8082/swagger-ui/index.html для службы бронирования.
Я не могу получить доступ к Swagger через http://localhost:8082/swagger-ui/index.html для шлюза API. Он показывает, что мне не удалось загрузить определение API.
Вот файл booking-service.yml

Код: Выделить всё

server:
port: 8082
forward-headers-strategy: framework

spring:
application:
name: booking-service

datasource:
driver-class-name: org.postgresql.Driver
url: ${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5434/bookings}
username: ${SPRING_DATASOURCE_USERNAME:admin}
password: ${SPRING_DATASOURCE_PASSWORD:password}

jpa:
open-in-view: false
hibernate:
ddl-auto: validate

flyway:
enabled: true

cache:
type: redis
data:
redis:
host: ${REDIS_HOST:localhost}
port: ${REDIS_PORT:6379}
repositories:
enabled: false

kafka:
bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:localhost:9092}
producer:
key-serializer: org.apache.kafka.common.serialization.StringSerializer
value-serializer: org.apache.kafka.common.serialization.StringSerializer

example:
kafka:
enabled: true
topics:
booking-events: booking.events
booking-events-dlt: booking.events.dlt

# SWAGGER
springdoc:
api-docs:
enabled: true
show-actuator: true
override-with-generic-response: false

eureka:
client:
service-url:
defaultZone: ${EUREKA_DEFAULTZONE:http://localhost:8761/eureka/}

resilience4j:
circuitbreaker:
instances:
professionals:
slidingWindowSize: 20
minimumNumberOfCalls: 10
failureRateThreshold: 50
Вот api-gateway.yml

Код: Выделить всё

server:
port: 8080
forward-headers-strategy: framework

spring:
application:
name: api-gateway

cloud:
gateway:
discovery:
locator:
enabled: true
lower-case-service-id: true

routes:
- id: professionals-native
uri: lb://professionals-service
predicates:
- Path=/api/v1/**

- id: professionals
uri: lb://professionals-service
predicates:
- Path=/api/professionals/**
filters:
# /api/professionals/** -> /api/** on professionals-service
- StripPrefix=2
- PrefixPath=/api

- id: booking
uri: lb://booking-service
predicates:
- Path=/api/bookings/**,/api/availability/**

# OpenAPI aggregation routes
- id: professionals-openapi
uri: lb://professionals-service
predicates:
- Path=/professionals/v3/api-docs,/professionals/v3/api-docs/**
filters:
# /professionals/v3/api-docs -> /v3/api-docs
- StripPrefix=1

- id: booking-openapi
uri: lb://booking-service
predicates:
- Path=/booking/v3/api-docs,/booking/v3/api-docs/**
filters:
# /booking/v3/api-docs -> /v3/api-docs
- StripPrefix=1

springdoc:
api-docs:
enabled: true
swagger-ui:
disable-swagger-default-url: true
urls:
- name: professionals-service
url: /professionals/v3/api-docs
- name: booking-service
url: /booking/v3/api-docs

eureka:
client:
service-url:
defaultZone: ${EUREKA_DEFAULTZONE:http://localhost:8761/eureka/}

management:
endpoint:
gateway:
enabled: true
endpoints:
web:
exposure:
include: health,info,gateway,env
Для http://localhost:8080/swagger-ui/index. ... ng-service
Эта проблема показана ниже.

Код: Выделить всё

Failed to load API definition.
Fetch error
Not Found /booking/v3/api-docs
Как это исправить?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ed-to-load
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»