Gateway提供一种简单、有效的方式路由到API,并为之提供交叉关注点。
文章目录
1、在项目中集成Spring Cloud Gateway
(1)、引入相应的依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
(2)、使用控制
如果已经在项目中引入了Spring Cloud Gateway的依赖,但是不想开启Gateway功能,可以使用如下的配置进行管理:
spring:
cloud:
gateway:
enabled: false
2、Route Predicate Factories
Gateway通过Predicate的设置来匹配不同的路由规则,从而对于不同的HTTP请求进行分发到不通的路径;常见的配置格式如下:
spring:
cloud:
gateway:
routes:
- id: [route_name]
uri: [url]
predicates:
- [predicate规则]
具体的规则匹配方式可以参见官方网站:Spring Cloud Gateway
3、GatewayFilter Factories
路由过滤器允许以某种方式修改传入的HTTP请求或传出的HTTP响应;路由过滤器的作用域是特定的路由;当然也可以使用自定义的过滤器。常用的配置方式如下:
spring:
cloud:
gateway:
routes:
- id: [route_name]
uri: [url]
filters:
- [相应的规则]
更详细的内容参见官方网站:Spring Cloud Gateway
4、 Global Filters
Global Filters是一种应用于全体路由的特殊过滤器;
更详细的内容参见官方网站:Spring Cloud Gateway
注意一定要是路由才行