Gateway 断言的配置方式
方式一,yml配置
# 约定大于配置
# After路由断言工厂
# 约定为AddRequestHeader,对应的是AddRequestHeaderGateFilterFactory过滤器,
# 此示例将会在请求头中添加 X-Request-Foo请求头
spring:
  cloud:
    gateway:
      routes:
        - id: after_route
          uri: http://httpbin.org/
          filters:
            - AddRequestHeader=X-Request-Foo, Bar
          predicates:
            - After=2017-01-20T17:42:47.789-07:00[America/Denver]
  profiles: after_route
方式二:配置RouteLocator的bean,以流式api配置
/**
     * RequestTimeFilter为自定义过滤器
     * @param builder
     * @return
     */
    @Bean
    public RouteLocator customerRouteLocator(RouteLocatorBuilder builder) {
        return builder.routes().
                route(r -> r.path("/get/**")
                    .filters(f -> f.filter(new RequestTimeFilter()).addRequestHeader("X-Response-Default-Foo", "Default-Bar"))
                    .uri("http://httpbin.org").order(0).id("customer_filter_router")
                )
                .build();
    }
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐