配置路由的两种方式
1、通过配置的方式来配置的路由规则
gateway:
routes:
# 采用自定义路由 ID(有固定用法,不同的 id 有不同的功能,详见:https://cloud.spring.io/spring-cloud-gateway/2.0.x/single/spring-cloud-gateway.html#gateway-route-filters)
- id: NACOS-CONSUMER
# 采用 LoadBalanceClient 方式请求,以 lb:// 开头,后面的是注册在 Nacos 上的服务名
uri: lb://nacos-user-provider
# Predicate 翻译过来是“谓词”的意思,必须,主要作用是匹配用户的请求,有很多种用法
predicates:
# Method 方法谓词,这里是匹配 GET 和 POST 请求
- Method=GET,POST
2、通过硬编码的方式来配置路由规则

/**
* @author sunli
* @date 2020/3/20 17:44
*/
@Configuration
public class GateWayConfig {
@Bean
public RouteLocator routes(RouteLocatorBuilder builder) {
RouteLocatorBuilder.Builder routes = builder.routes();
routes.route("test_baidu_route", r -> r.path("/guonei").uri("http://news.baidu.com/guonei")).build();
return routes.build();
}
}
测试成功

3、动态路由的配置(我们通过在注册中心注册的服务名来作为路由配置)

常用perdicates(断言)配置
为了实现一组匹配规则,让请求过来找对应的Route进行处理。