1、 After Route Predicate Factory

输入一个参数:时间,匹配该时间之后的请求,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: after_route
        uri: https://anoyi.com
        predicates:
        - After=2019-11-11T11:11:11.111+08:00[Asia/Shanghai]

2、Before Route Predicate Factory

输入一个参数:时间,匹配该时间之前的请求,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: before_route
        uri: https://anoyi.com
        predicates:
        - Before=2019-11-11T11:11:11.111+08:00[Asia/Shanghai]

3、Between Route Predicate Factory

输入两个参数:时间1、时间2,匹配该时间段的请求,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: between_route
        uri: https://anoyi.com
        predicates:
        - Between=2019-11-10T11:11:11.111+08:00[Asia/Shanghai], 2019-11-12T11:11:11.111+08:00[Asia/Shanghai]

4、Cookie Route Predicate Factory

输入两个参数:Cookie 名称、正则表达式,匹配 Cookie 中是否存在该名称且值与正则表达式匹配,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: cookie_route
        uri: https://anoyi.com
        predicates:
        - Cookie=name, ano.i

5、Header Route Predicate Factory

输入两个参数:Header 名称、正则表达式,匹配 Header 中是否存在该名称且值与正则表达式匹配,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: header_route
        uri: https://anoyi.com
        predicates:
        - Header=name, ano.i

6、Host Route Predicate Factory

输入一个参数:Host Name 表达式列表,匹配 Header 中 Host 字段的值,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: host_route
        uri: https://anoyi.com
        predicates:
        - Host=**.anoyi.cn,**.anoyi.io

7、Method Route Predicate Factory

输入一个参数:HTTP Method,匹配请求方法,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: method_route
        uri: https://anoyi.com
        predicates:
        - Method=GET

8、Path Route Predicate Factory

输入两个参数:Spring PathMatcher 表达式列表、【可选】matchOptionalTrailingSeparator 标识,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: host_route
        uri: https://anoyi.com
        predicates:
        - Path=/foo/{segment},/bar/{segment}

9、Query Route Predicate Factory

输入两个参数:请求参数、【可选】正则表达式,匹配请求地址类似于 https://anoyi.com/test?hello=world&name=anoyi 所包含的 request params, 示例配置:

# 仅匹配是否包含参数 hello
spring:
  cloud:
    gateway:
      routes:
      - id: query_route
        uri: https://anoyi.com
        predicates:
        - Query=hello
# 匹配参数 name 是否以 ano 开头
spring:
  cloud:
    gateway:
      routes:
      - id: query_route
        uri: https://anoyi.com
        predicates:
        - Query=name, ano.*

10、RemoteAddr Route Predicate Factory

输入一个参数:IPv4 或 IPv6 地址列表,匹配请求来源的IP地址是否在该列表,示例配置:

spring:
  cloud:
    gateway:
      routes:
      - id: remoteaddr_route
        uri: https://anoyi.com
        predicates:
        - RemoteAddr=192.168.1.1/24

本文由博客一文多发平台 OpenWrite 发布!

Spring Cloud Gateway - 路由法则的更多相关文章

  1. SpringCloud无废话入门05:Spring Cloud Gateway路由、filter、熔断

    1.什么是路由网关 截至目前为止的例子中,我们创建了一个service,叫做:HelloService,然后我们把它部署到了两台服务器(即提供了两个provider),然后我们又使用ribbon将其做 ...

  2. Spring Cloud Alibaba学习笔记(16) - Spring Cloud Gateway 内置的路由谓词工厂

    Spring Cloud Gateway路由配置的两种形式 Spring Cloud Gateway的路由配置有两种形式,分别是路由到指定的URL以及路由到指定的微服务,在上文博客的示例中我们就已经使 ...

  3. 看完就会的Spring Cloud Gateway

    在前面几节,我给大家介绍了当一个系统拆分成微服务后,会产生的问题与解决方案:服务如何发现与管理(Nacos注册中心实战),服务与服务如何通信(Ribbon, Feign实战) 今天我们就来聊一聊另一个 ...

  4. Spring Cloud Gateway 没有链路信息,我 TM 人傻了(上)

    本系列是 我TM人傻了 系列第五期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异 ...

  5. Spring Cloud Gateway 没有链路信息,我 TM 人傻了(中)

    本系列是 我TM人傻了 系列第五期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异 ...

  6. Spring Cloud Gateway夺命连环10问?

    大家好,我是不才陈某~ 最近有很多小伙伴私信我催更 <Spring Cloud 进阶>,陈某也总结了一下,最终原因就是陈某之前力求一篇文章将一个组件重要知识点讲透,这样导致了文章篇幅很长, ...

  7. Spring Cloud Gateway的动态路由怎样做?集成Nacos实现很简单

    一.说明 网关的核心概念就是路由配置和路由规则,而作为所有请求流量的入口,在实际生产环境中为了保证高可靠和高可用,是尽量要避免重启的,所以实现动态路由是非常有必要的:本文主要介绍 Spring Clo ...

  8. Spring Cloud gateway 网关四 动态路由

    微服务当前这么火爆的程度,如果不能学会一种微服务框架技术.怎么能升职加薪,增加简历的筹码?spring cloud 和 Dubbo 需要单独学习.说没有时间?没有精力?要学俩个框架?而Spring C ...

  9. Spring Cloud Alibaba学习笔记(17) - Spring Cloud Gateway 自定义路由谓词工厂

    在前文中,我们介绍了Spring Cloud Gateway内置了一系列的路由谓词工厂,但是如果这些内置的路由谓词工厂不能满足业务需求的话,我们可以自定义路由谓词工厂来实现特定的需求. 例如有某个服务 ...

随机推荐

  1. 这次,我是如何监控服务器CPU和内存的

    背景 在新项目A中,要结合业务做性能测试.对于做过N次性能测试的我,这次有些巧妇有难无米之炊的感觉.以往的项目,服务器都是部署在AWS或者阿里云,像这样的云服务器厂商是可以通过轻松配置各种Dashbo ...

  2. Spark安装与学习

    http://www.cnblogs.com/jerrylead/archive/2012/08/13/2636115.html

  3. Vue+element UI实现分页组件

    介绍 这是一个是基于element-UI的分页组件基础上,进行了二次封装的分页组件,在展示数据时,该分页组件采用了每显示一页数据,只请求当前页面的数据的请求策略,从而避免了一次性将数据全部请求所造成的 ...

  4. 游戏辅助外gua篇:如何Dump内存获得游戏的辅助

    转载请标明出处: https://dujinyang.blog.csdn.net/article/category/9267855 本文出自:[奥特曼超人的博客] 本篇邀请了 "阿七&quo ...

  5. python接口测试-数据驱动-DDT

    DDT是python的第三方库,全名称为:Data-Driven/Decorated Tests. ddt安装 通过pip安装ddt模块,安装Python后,Python自带pip功能包 切换到Pyt ...

  6. Opencv python(3)| cv. VideoCapture.get() 参数介绍

    cv2.VideoCapture.get ()  的 (0-18)参数 cv2.VideoCapture.get(0)            视频文件的当前位置(播放)以毫秒为单位 cv2.Video ...

  7. Docker 资源 | 官方文件

    Docker资源 Docker官方英文资源: docker官网:http://www.docker.com Docker windows入门:https://docs.docker.com/windo ...

  8. git 设置不用每次都输入 账号密码

    执行命令 git config --global credential.helper store 然后,下次再输入一次 账号密码 就可以了.

  9. css3 svg路径蒙版动画

    css3 svg路径蒙版动画 具体看https://www.cnblogs.com/oubenruing/p/9568954.html 还有个更好控制的写法<pre><!DOCTYP ...

  10. MySQL57安装与设置

    安装MySQL 添加mysql源 [root@localhost ~]# rpm -ivh http://repo.mysql.com//mysql57-community-release-el7-7 ...