当前位置: 首页 > news >正文

3.1 Gateway之路由请求和转发

1.依赖坐标

		<!--网关--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><!--服务注册和发现--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--负载均衡--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-loadbalancer</artifactId></dependency>

2.路由属性

网关路由对应的Java类型是RouteDefinition,其中常见的属性有

属性描述
id路由唯一标识
uri路由目标地址
predicates路由断言,判断请求是否符合当前路由
filter路由过滤器,对请求或响应做特殊处理

3.常用路由过滤器

过滤器说明
AddRequestHeader给当前请求添加一个请求头
RemoveRequestHeader移除请求中的一个请求头
AddResponseHeader给响应结果中添加一个响应头
RemoveResponseHeader移除响应结果中的一个响应头
RewritePath请求路径重写
StripPrefix去除请求路径中的N段前缀

4.常见路由断言

名称说明
After是某个时间点后的请求
Before是某个时间点之前的请求
Between是某两个时间点之间的请求
Cookie请求必须包含某些cookie
Header请求必须包含某些header
Host请求必须是访问某个域名
Method请求方式必须是指定方式
Path请求路径必须符合指定规则
Query请求参数必须包含指定参数
RomoteAddr请求者的IP必须是指定范围
Weight权重处理
XForwarded Remote Addr基于请求的来源IP做判断

5.配置文件

spring:application:# 服务名称name: 服务名称cloud:# nacos配置nacos:# Nacos服务端地址server-addr: 端口:IP# 服务注册discovery:# 集群名称cluster-name: 集群名称# 命名空间IDnamespace: 命名空间ID# 是否是临时实例,默认为trueephemeral: true# 网关配置gateway:# 路由配置routes:- id: 路由唯一标识uri: 路由目标地址 # 例如:lb://服务名predicates:- Path=请求路径 # 例如:/users/**- id: 路由唯一标识uri: 路由目标地址 # 例如:lb://服务名predicates:- 请求路径 # 例如:/orders/**
http://www.lryc.cn/news/342606.html

相关文章:

  • 人脸识别开源算法库和开源数据库
  • Excel 中用于在一个范围中查找特定的值,并返回同一行中指定列的值 顺序不一样 可以处理吗
  • MySql-日期分组
  • 有哪些方法可以在运行时动态生成一个Java类?
  • JAVA两个线程交替打印实现
  • 【C语言】学习C语言
  • C 深入指针(2)
  • FileLink跨网文件交换,推动企业高效协作|半导体行业解决方案
  • 代码随想录day56 | 动态规划P16 | ● 583. ● 72. ● 编辑距离总结篇
  • ASP.NET网络在线考试系统
  • 天锐绿盾 | 办公加密系统,源代码防泄密、源代码透明加密、防止开发部门人员泄露源码
  • Day1| Java基础 | 1 面向对象特性
  • Spring 事务失效的几种情况
  • 【Linux 命令操作】如何在 Linux 中使用多行注释呢?
  • 【RPC】Dubbo接口测试
  • PVZ2 植物克僵尸【第二期】
  • libcity笔记:libcity/data/batch.py
  • 【Java EE】多线程(二)Thread 类与常用方法
  • AGV无人叉车 | 我们为什么要投资“智慧生产”
  • 【C++】滑动窗口:将x减到0的最小操作数
  • 运动控制“MC_MoveVelocity“功能块详细应用介绍
  • 9种单片机常用的软件架构
  • PyQt5中重要的概念:信号与槽
  • MacOS快速安装FFmpeg,并使用FFmpeg转换视频
  • docker部署nginx并配置https
  • 五一小长假,景区智慧公厕发挥了那些作用?
  • Spring - 9 ( 10000 字 Spring 入门级教程 )
  • shpfile转GeoJSON;控制shp转GeoJSON的精度;如何获取GeoJSON;GeoJSON是什么有什么用;GeoJSON结构详解(带数据示例)
  • 没有强有力的科技支撑,就没有保密工作的高质量发展。新修订的《中华人民共和国保守国家秘密法》在总则中新增保密科技创新有关内容包括()
  • 【快速入门】数据库的增删改查与结构讲解