application.properties配置微服务网关是否弃用?网关404问题求助
API网关访问/quiz-services出现404的排查与解决
核心问题:路径断言不匹配
你的API网关配置中,QUIZ-SERVICE的路由断言设置为Path=/quiz/**,但你实际访问的路径是/quiz-services,两者完全不匹配,这直接导致了404错误。
解决方案
你有两种选择来修复这个问题:
- 调整访问路径:将请求路径改为
/quiz开头的格式,比如http://localhost:8083/quiz/your-api,匹配路由配置中的规则 - 修改路由断言:如果业务必须使用
/quiz-services路径,把QUIZ-SERVICE的断言改为Path=/quiz-services/**,修改后的配置如下:
spring.cloud.gateway.routes[0].id=QUIZ-SERVICE spring.cloud.gateway.routes[0].uri=lb://QUIZ-SERVICE spring.cloud.gateway.routes[0].predicates[0]=Path=/quiz-services/**
额外排查点(如果调整后仍有问题)
- 确认QUIZ-SERVICE已经在注册中心(如Eureka、Nacos)正常注册,网关能通过
lb://QUIZ-SERVICE解析到服务实例 - 直接访问QUIZ-SERVICE的端口和接口,验证服务本身是否正常运行
- 查看网关的debug日志,检查请求是否被正确路由,有没有转发失败的相关日志信息
内容的提问来源于stack exchange,提问作者Rahul Gupta
相关产品推荐
相关产品推荐

