Ответ 1
Попробуйте это, я думаю, это поможет вам решить вашу проблему.
Это мой файл bootstrap.yml для шлюза
spring:
application:
name: gateway-service
---
spring:
profiles: default
cloud:
consul:
config:
prefix: config/dev/
format: FILES
host: localhost
port: 8500
discovery:
prefer-ip-address: true
spring.profiles.active: dev
Я использую эту зависимость для шлюза и для всех приложений
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-config</artifactId>
</dependency>
Консул использует мой сервер конфигурации. то я добавляю консула к этим конфигурациям. путь конфигурации:/config/dev/gateway.yml
zuul:
prefix: /api
ignoredServices: '*'
host:
connect-timeout-millis: 20000
socket-timeout-millis: 20000
routes:
customer-service:
path: /customer/**
serviceId: customer-service
stripPrefix: false
sensitiveHeaders: Cookie,Set-Cookie
Служба шлюза spring аннотировать загрузочное приложение, как показано ниже
@SpringBootApplication
@EnableDiscoveryClient
@EnableZuulProxy
public class GatewayServiceApplication {
public static void main(String[] args) {
SpringApplication.run(GatewayServiceApplication.class, args);
} // End main ()
}// End GatewayServiceApplication
если вы сделаете свое приложение таким образом, вы можете использовать маршруты своим предпочитаемым способом.