这个方法在整合spring cloud gateway组件进入项目时,是很有用的。

如果给项目引入了网关,那就代表着大多数甚至是全部请求都需要由网关来路由转发,那就需要编写对应的路由规则。

那么怎么知道我们的路由规则写的对不对,如果通过网关访问微服务接口无法正常响应,怎么排查,此时需要找到路由后的真实路径,然后就可以知道是不是路由规则写错了。

怎么找到路由后的真实路径?

这里不建议加配置,改源码,打日志什么的,直接源码打断点,查看参数值,毕竟网关整合也只是网关正常上线才需要调试,不需要专门打出日志,改源码就更麻烦了,简单事情复杂化了。

一般来说,网关请求路由到微服务时,微服务多实例,也是做需要负载均衡的,直接跟进一个关键类org.springframework.cloud.gateway.filter.LoadBalancerClientFilter,打上断点,如下:
Spring Cloud Alibaba入门实践(二十五)-Gateway怎么排查路由后的真实路径
客户端发起请求,控制台上可以看到如下信息:
Spring Cloud Alibaba入门实践(二十五)-Gateway怎么排查路由后的真实路径
uri就是原始路径,requestUrl就是真实路径,这样一对比,就能够知道路由规则写的对不对,所以哪怕你对各种路由方式不熟悉,掌握这种方式,再加上官方文档,肯定是能够写出符合你自己要求的路由规则的。

相关文章:

  • 2021-09-12
  • 2021-12-13
  • 2021-11-23
  • 2021-11-02
  • 2021-12-16
  • 2021-10-24
  • 2021-07-30
猜你喜欢
  • 2021-09-11
  • 2021-09-03
  • 2022-12-23
  • 2022-01-05
  • 2022-12-23
  • 2021-04-06
相关资源
相似解决方案