可爱静

记录生活、学习和工作

0%

GateWay总结

应用场景

  • 使用Nacos实现服务的注册与发现
  • 消费者访问指定路径,gateway会根据配置信息路由到指定服务下的指定路径

添加依赖

1
2
3
4
5
<!--gateway 网关依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>

实现思路

  1. 服务提供方将自己注册到Nacos;
  2. 在gateway子项目配置文件里配置路径;
  3. 访问指定路径时实现路由功能。

配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
spring:
cloud:
nacos:
discovery:
server-addr: localhost:8848
namespace: xxxxxx-ee03-4421-8ba5-d4d7a9d25caa
enabled: true
metadata:
management:
context-path: ${server.servlet.context-path}/provider
gateway:
discovery:
locator:
enabled: true
routes:
- id: test_route # 路由测试
uri: lb://developer-provider
predicates: # 断言
- Path=/api/v1/gateway/**
filters: # 过滤器
- StripPrefix=3 # StripPrefix参数表示在将请求发送到下游之前从请求中剥离的路径个数
- PreserveHostHeader # 防止host被修改为localhost
logging:
config: classpath:logback-dev.xml

效果

访问localhost:17788/api/v1/gateway/test会被路由到localhost:27788/provider/test