Spring Cloud Gateway - 路由法则
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 - 路由法则的更多相关文章
- SpringCloud无废话入门05:Spring Cloud Gateway路由、filter、熔断
1.什么是路由网关 截至目前为止的例子中,我们创建了一个service,叫做:HelloService,然后我们把它部署到了两台服务器(即提供了两个provider),然后我们又使用ribbon将其做 ...
- Spring Cloud Alibaba学习笔记(16) - Spring Cloud Gateway 内置的路由谓词工厂
Spring Cloud Gateway路由配置的两种形式 Spring Cloud Gateway的路由配置有两种形式,分别是路由到指定的URL以及路由到指定的微服务,在上文博客的示例中我们就已经使 ...
- 看完就会的Spring Cloud Gateway
在前面几节,我给大家介绍了当一个系统拆分成微服务后,会产生的问题与解决方案:服务如何发现与管理(Nacos注册中心实战),服务与服务如何通信(Ribbon, Feign实战) 今天我们就来聊一聊另一个 ...
- Spring Cloud Gateway 没有链路信息,我 TM 人傻了(上)
本系列是 我TM人傻了 系列第五期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异 ...
- Spring Cloud Gateway 没有链路信息,我 TM 人傻了(中)
本系列是 我TM人傻了 系列第五期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异 ...
- Spring Cloud Gateway夺命连环10问?
大家好,我是不才陈某~ 最近有很多小伙伴私信我催更 <Spring Cloud 进阶>,陈某也总结了一下,最终原因就是陈某之前力求一篇文章将一个组件重要知识点讲透,这样导致了文章篇幅很长, ...
- Spring Cloud Gateway的动态路由怎样做?集成Nacos实现很简单
一.说明 网关的核心概念就是路由配置和路由规则,而作为所有请求流量的入口,在实际生产环境中为了保证高可靠和高可用,是尽量要避免重启的,所以实现动态路由是非常有必要的:本文主要介绍 Spring Clo ...
- Spring Cloud gateway 网关四 动态路由
微服务当前这么火爆的程度,如果不能学会一种微服务框架技术.怎么能升职加薪,增加简历的筹码?spring cloud 和 Dubbo 需要单独学习.说没有时间?没有精力?要学俩个框架?而Spring C ...
- Spring Cloud Alibaba学习笔记(17) - Spring Cloud Gateway 自定义路由谓词工厂
在前文中,我们介绍了Spring Cloud Gateway内置了一系列的路由谓词工厂,但是如果这些内置的路由谓词工厂不能满足业务需求的话,我们可以自定义路由谓词工厂来实现特定的需求. 例如有某个服务 ...
随机推荐
- Java零基础入门面向对象之多态
多态: 多态的概念:一种事物的多种形态:允许不同类的对象对同一消息做出不同的响应 多态的前提:继承,重写:向上转型(父类引用指向子类对象) 多态的作用:提高代码的可用性:降低模块之间的耦合度 多态分类 ...
- nginx篇最初级用法之SSL虚拟主机
注意:在源码安装nginx时必须要使用--with-http_ssl_module参数启动加密模块. openssl genrsa > cert.key //使用openssl自己签发私钥 o ...
- 求矩阵最少(或最多)路径和(python实现)
1.递归方式 求最短,最终状态即右下角 f(v, i, j) = min(f(v, i - 1, j), f(v, i, j - 1)) + v[i][j] 最长只需将min改为max即可 impor ...
- Java序列化与反序列化三连问:是什么?为什么要?如何做?
Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象 ...
- java应用性能调优之详解System的gc垃圾回收方法
一.什么是System.gc()? System.gc()是用Java,C#和许多其他流行的高级编程语言提供的API.当它被调用时,它将尽最大努力从内存中清除垃圾(即未被引用的对象).名词解释:GC, ...
- 双十一还在盖楼?少年你应该掌握Docker 部署 Consul了
▶ Spring Boot 依赖与配置 Maven 依赖 <dependencyManagement> <dependencies> <dependency> &l ...
- PWM呼吸灯
1.PWM简介 PWM是 Pulse Width Modulation 的缩写,中文意思就是脉冲宽度调 制,简称脉宽调制.它是利用微处理器的数字输出来对模拟电路进行控 制的一种非常有效的技 ...
- python——函数的形参和实参、参数
python的参数分类 python参数可以分为两类:1.定义时的参数--形参(形式参数).2.调用时的参数--实参(实际参数,传参) 实参的规则 实参就是在函数调用的时候,通过函数后面的括号传递给函 ...
- 类型擦除真的能完全擦除一切信息吗?java 泛型揭秘
背景 我们都知道泛型本质上是提供类型的"类型参数",它们也被称为参数化类型(parameterized type)或参量多态(parametric polymorphism).其实 ...
- 网站搭建-虚拟机的使用-Linux (包括输入法和QQ下载使用)
之前已经联网了,基本的软件系统会自己下载,先不用管. 1. 先下载一个中文输入法吧: 先改一下Firefox的搜索引擎吧,因为大陆不支持google 下载,安装,就完事了,还好这个没变,几年不用这个系 ...