Gateway

目录

使用

工作机制

Predicate断言

Filter过滤器(鉴权)

GatewayFilter

GlobalFilter


使用

Gateway底层是使用Ribbon来实现负载均衡的

新建模块,端口5001

1、引入依赖

spring-boot-starter-web里存在tomcat,spring-cloud-starter-gateway里有netty,会冲突

2、yml

3、properties或者yml选择一个

4、主启动类

工作机制

Predicate断言

1、After Route Predicate

XML 复制代码
- After=2022-08-18T12:35:00.000+08:00[Asia/Shanghai]

2、Before Route Predicate

3、Between Route Predicate(时间范围内)

XML 复制代码
- Between=2020-03-12T15:44:15.064+08:00[Asia/Shanghai],2020-04-12T15:44:15.064+08:00[Asia/Shanghai]

4、Cookie Route Predicate

需要两个参数,一个是 Cookie name,一个是正则表达式,也可以是具体的值

5、Header Route Predicate

两个参数:一个是属性名称和一个正则表达式,这个属性值和正则表达式匹配执行

6、Host Route Predicate

postman测试

或者修改hosts文件访问

7、Method Route Predicate

8、Path Route Predicate

9、Query Route Predicate

请求时必须携带指定参数

支持传入两个参数,一个是属性名,一个是属性值,属性值可以是正则表达式。

10、RemoteAddr Route Predicate

请求转发的IP是127.0.0.1才能断言成功

Filter过滤器(鉴权)

GatewayFilter

原生使用少

需求:请求后携带参数color=blue,address=beijing

在服务提供方可以通过request来查看是否携带参数

GlobalFilter

自定义全局GlobalFilter过滤器

需求:如果请求参数user=hspedu,pwd=123456则放行,否则不能通过验证

相关推荐
budingxiaomoli5 天前
环境和工程创建
java·spring·springcloud
budingxiaomoli5 天前
服务注册-服务实现
运维·springcloud
梵得儿SHI13 天前
SpringCloud 生产级落地:Docker 容器化 + K8s 编排部署全攻略(含完整 yaml + 避坑指南)
docker·云原生·kubernetes·k8s·springcloud·微服务部署·java 后端
甜鲸鱼14 天前
JWT过滤器:从单体应用到微服务架构
微服务·架构·gateway·springcloud
notfound404314 天前
解决SpringCloudGateway用户请求超时导致日志未记录情况
java·spring boot·spring·gateway·springcloud
8Qi819 天前
Elasticsearch实战篇:索引库、文档与JavaRestClient操作指南
java·大数据·elasticsearch·搜索引擎·微服务·架构·springcloud
8Qi822 天前
RabbitMQ高级篇:消息可靠性、幂等性与延迟消息
java·分布式·微服务·中间件·rabbitmq·springcloud
代码漫谈22 天前
微服务 vs 单体架构:架构选型、实战拆解与决策指南
java·微服务·springboot·springcloud
色空大师23 天前
【微服务项目-短信平台】
java·redis·微服务·rabbitmq·springcloud·短信
梵得儿SHI23 天前
SpringCloud 实战落地:可观测性建设(SkyWalking + Prometheus + Grafana)从 0 到 1 生产级部署
grafana·prometheus·springcloud·skywalking·微服务可观测性·线上问题排查