目录
yml配置
server:
port: 30000
eureka:
client: # Eureka客户端配置,指向注册中心地址
serviceUrl:
defaultZone: http://localhost:10086/eureka/
instance:
prefer-ip-address: true # 开启使用IP地址进行注册
instance-id: gateway-server:30000 # 修改实例Id
spring:
application:
name: gateway-server
cloud:
gateway:
discovery:
locator:
enabled: false # 指定关闭通过服务名访问,默认就是关闭
lower-case-service-id: true # 服务名称小写
routes:
- id: application-user #指定当前路由配置的Id,需要唯一
# uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
uri: lb://user-server #路由的目标地址 lb就是负载均衡,后面跟服务名称
predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
- Path=/api-user/** # 这个是按照路径匹配,只要以/user/开头就符合要求
- id: application-order #指定当前路由配置的Id,需要唯一
# uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
uri: lb://order-server #路由的目标地址 lb就是负载均衡,后面跟服务名称
predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
- Path=/api-order/** # 这个是按照路径匹配,只要以
filters:
default-filters: #默认前缀都为1
- StripPrefix=1
自定义GatewayFilter
-
在SpringCloudGateway自定义过滤器,过滤器需要实现GatewayFilter和Ordered这两个接口
-
我们以计算当前请求调用链时长为例,实现自定义GatewayFilter