问题截图如下:
spring cloud gateway application.yml配置(备注:使用bootstrap.yml会导致gateway服务无法正确注册到nacos,报服务名称找不到)
spring:
application:
name: gateway
cloud:
nacos:
username: nacos
password: nacos
server-addr: 127.0.0.1:8848
gateway:
discovery:
locator:
enabled: true # gateway可以通过开启以下配置来打开根据服务的serviceId来匹配路由,默认是大写
routes:
- id: muRoute
uri: lb://customer
#uri: http://localhost:18085
predicates:
- Path=/api/** #这是错误写法,会导致gateway配置不到路径,从而返回{},正确如下
- Path=/api/**
sentinel:
transport:
clientIp: 10.6.20.114
port: 8888 #跟控制台通讯的端口
dashboard: localhost:9090 # 指定控制台服务的地址
server:
port: 18088
这个问题花了我很久的时间,一直找不到问题的原因,看到官网文档才恍然大悟,难受的一批
lb://customer:代表的意思是使用负载均衡的方式路由服务,所以需要在项目导入如下依赖
org.springframework.cloud
spring-cloud-starter-loadbalancer
com.alibaba.cloud
spring-cloud-alibaba-sentinel-gateway



