师兄,zuulProperties动态路由不起作用

来源:8-3 Zuul:Cookie和动态路由

qq_聖曖格_0

2019-05-18

我使用的是2.1.5.RELEASE和Greenwich.SR1版本,前面讲的bus刷新,可以通过post手动刷新配置,但是到这里,修改了git网关配置,就不行,代码如下:
pom.xml配置

 <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.5.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>api-gateway</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>api-gateway</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

本地配置

server:
  port: 9000
spring:
  application:
    name: api-gateway
  cloud:
    config:
      discovery:
        enabled: true
        service-id: config-server
      profile: dev
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8762/eureka/
  instance:
    instance-id: ${spring.application.name}:${spring.cloud.client.ip-address}:${spring.application.instance_id:${server.port}}
    prefer-ip-address: true

启动类

@SpringBootApplication
@EnableZuulProxy
public class ApiGatewayApplication {

    public static void main(String[] args) {
        SpringApplication.run(ApiGatewayApplication.class, args);
    }

    /**
     * 动态路由
     * @return
     */
    @ConfigurationProperties("zuul")
    @RefreshScope
    public ZuulProperties zuulProperties() {
        return new ZuulProperties();
    }
}

git的网关配置

zuul:
  #全部服务忽略敏感头(全部服务都可以传递cookie)
  sensitive-headers: 
  routes:
  # /myProduct/product/list -> /product/product/list
    aaaaaa:
      path: /oneProduct/**
      serviceId: product
      sensitiveHeaders:  #显示敏感头信息(cookie,配置空即可)
  #简洁写法
#    product: /myProduct/**
  #排除某些路由
  ignored-patterns:
    - /**/product/listForOrder 
#暴露配置,
#通过:http://localhost:9000/actuator/routes可以查看所有匹配的路由
#低版本:http://localhost:9000/applicatio/routes查看
management:
  endpoints:
    web:
      exposure:
        include: "*"  
ribbon:
  ReadTimeout: 5000
  SocketTimeout: 5000
写回答

2回答

廖师兄

2019-05-20

好的,采纳为正确答案吧,表示close这个问题了。

0
3
廖师兄
回复
qq_聖曖格_0
重新开个问题
2019-05-22
共3条回复

qq_聖曖格_0

提问者

2019-05-18

不好意思,我找到原因了,没加Bus依赖和配置mq

0
0

SpringCloud Finchley(M2+RELEASE+SR2)微服务实战

SpringCloud组件实现微服务,【已升级Finchley.Release】

5672 学习 · 2489 问题

查看课程