Zuul多路径访问时报404问题

        最近学习SpringCloud过程中发现了一个问题。通过zuul+fegin做路由转发,服务调用的时候,经常会出现404。在单路径下不会出现问题,当我加上多路径例如 /user/add,类似这种就会出现404。

最后通过排查发现路径匹配出现的问题,修改成如下即可:

zuul:
  host:
    connect-timeout-millis: 60000
  routes:
    api-a:
#  ** 可以匹配多个/ xx/xx
# * 仅仅只能匹配单个/xxx
      path: /api-a/**  
      serviceId: service-ribbon
    api-b:
      path: /api-b/**
      serviceId: service-feign

 当然我们还可以为通过设置来决定是否需要zuul给我们提供的前缀路径

zuul默认给我们如下的跳转规则:

http://localhost:6666/api-a/cc/mm  ====》http://localhost:6666/cc/mm

我们可以通过设置stripPrefix来决定是否需要前缀,true是不加前缀(默认),false就会添加到路径上。

zuul:
  host:
    connect-timeout-millis: 60000
  routes:
   stripPrefix: false
    api-a:
      path: /api-a/**
      serviceId: service-ribbon
     # stripPrefix: false

跳转规则如下:

http://localhost:6666/api-a/cc/mm  ====》http://localhost:6666/api-a/cc/mm

你可能感兴趣的:(SpringCloud)