Я использую встроенный в Zuul прокси-сервер и реестр сервисов eureka в своем микросервисном приложении.После обновления весенних облачных зависимостей до Гринвича выдается ошибка 404 на уровне шлюза zuul.
Ниже приведены мои конфигурации.
Основной шлюз Zuul Основной класс
@SpringBootApplication
@EnableZuulProxy
@EnableSwagger2
@EnableHystrixDashboard
@EnableHystrix
public class GatewayApplication {
}
application.yml
zuul:
ignoreSecurityHeaders: false
sensitiveHeaders:
routes:
oauth:
path: /oauth/**
serviceId: oauth-server
payment:
path: /payment/**
serviceId: payment-service
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8082/eureka/
registerWithEureka: true
spring:
application:
name: zuul-gateway
Основной класс платежных услуг
@SpringBootApplication()
@EnableJpaRepositories({ "com.payment.repo" })
@EntityScan("com.payment.domain")
@EnableEurekaClient
@EnableSwagger2
public class PaymentServiceApplication {}
application.yml
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8082/eureka/
registerWithEureka: true
spring:
application:
name: payment-service
Мне удалось успешно пересылать запросы на сервисы от прокси-сервера zuul с помощью Finchley.RELEASE,Ниже приведены предыдущие зависимости maven.
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
<relativePath/>
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>io.zipkin.brave</groupId>
<artifactId>brave-bom</artifactId>
<version>5.4.3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
После обновления весенних облачных зависимостей до Greenwich.release Я не могу пересылать запросы на сервисы от прокси-сервера zuul.Это даёт 404.
Потому что когда раньше сервис оплаты звонков в zuul URL-адрес отображался как
http://localhost:8181/payment/v1/fundTransfer/test
Теперь он отображается как
http://localhost:8181/v1/fundTransfer/test
Кажется, zuul не добавляетзначение пути (оплата).Если я вернусь обратно в Finchley, он будет работать нормально с теми же конфигурациями.
Нужно ли мне менять конфигурацию маршрутизации в application.yml прокси-сервера zuul?