目录地址:
gateway作为网关,是一个单独的模块
1.添加依赖
XML
<!-- SpringCloud Alibaba Nacos -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!--gateway-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<!--gateway使用lb,必须要这个依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
2.启动类添加注解,开启nacos配置
3.添加bootstrap文件
XML
server:
port: 8084
# Spring
spring:
application:
# 应用名称
name: my-gateway
profiles:
active: gateway-test
cloud:
#nacos
nacos:
discovery:
# 服务注册地址
server-addr: 127.0.0.1:8848
namespace: fcfd084d-dea1-4a49-922b-2fa4d4e70dd8
group: dev
gateway:
discovery:
locator:
#开启注册中心路由功能
#是否与服务发现组件进行结合,通过serviceId转发到具体的服务实例。默认为false,设为true便开启通过服务中心的自动根据 serviceId 创建路由的功能
enabled: true
routes:
- id: order-service
uri: lb://my-order
# uri: http://127.0.0.1:8090/
predicates:
- Path=/order/**
filters:
- StripPrefix=1 #会截取test从url中删除
4.启动gateway服务,此时用8084端口访问接口 http://127.0.0.1:8084/order/getUserById 访问成功