SpringCloud学习-part35 Gateway常用Predicate

RoutePredicate

路径级别

必须匹配该路径才能路由

- Path=/payment/lb/**

时间级别

  • After Route Predicate
spring:
  application:
    name: cloud-gateway
  cloud:
    gateway:
      discovery:
        locator:
          enabled: true  # 开启从注册中心动态创建路由的功能,利用微服务名进行路由
      routes:
        - id: payment_routh            #路由ID,没有固定规则,但要求唯一
          uri: lb://cloud-payment-service #匹配后提供服务的路由地址
          #uri: http://localhost:8001   #匹配后提供服务的路由地址
          predicates:
            - Path=/payment/get/**     #断言: 路径相匹配的进行路由,注意这里的Path首字母大写

        - id: payment_routh2
          uri: lb://cloud-payment-service #lb 是Load Balance的缩写
          #uri: http://localhost:8001
          predicates:
            - Path=/payment/lb/**
            - After=2020-07-24T15:23:36.048+08:00[Asia/Shanghai]

Before Route Predicate
Between Route Predicate

predicates:
   - Path=/payment/lb/**
   - Between=2020-07-24T15:23:36.048+08:00[Asia/Shanghai],2020-08-24T18:23:36.048+08:00[Asia/Shanghai]

Cookie级别

Cookie Route Predicate 需要两个参数,一个是 Cookie name,一个是正则表达式。

路由规则会通过获取相应的 Cookie name 值 和正则表达式去匹配,如果匹配上就会执行路由,如果匹配不上就不执行。

- Cookie=username,ezerbel

在这里插入图片描述
在这里插入图片描述

Header 级别

请求头存在X-Request-Id属性,并且值为整数【 \d+ 】的正则表达式

- Header=X-Request-Id,\d+

在这里插入图片描述

Host级别

           - Host=**.ezerbel.com,**.lilith.org

在这里插入图片描述

Method级别

		- Method=GET

在这里插入图片描述

查询条件级别

- Query=username, \d+ # 要有参数名username,并且还必须是整数才能路由

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值