1. 程式人生 > >SpringCloud 服務閘道器路由規則的坑

SpringCloud 服務閘道器路由規則的坑

一、場景簡述

筆者最近用到SpringCloud 服務閘道器的時候,進行服務閘道器的路由測試,發現無法路由自己設定的規則,測試的時候如下

通過錯誤排查發現,原來是路由規則寫錯了!

路由規則如下(錯誤)

#埠
server:
  port: 8080
spring:
  #該配置檔案中的配置,對應的服務名稱是wc-gateway
  application:
    name: wc-gateway
  profiles:
    active: dev
#服務閘道器配置
zuul:
  host:
    connect-timeout-millis: 60000
    socket-timeout-millis: 60000
    #路由規則
    routes:
      api:
        path: /api/user/**
        serviceId: wc-client-user

二、解決方案

只需要將routes及以下的屬性左移,與host相等級別即可

修改後的路由規則

#埠
server:
  port: 8080
spring:
  #該配置檔案中的配置,對應的服務名稱是wc-gateway
  application:
    name: wc-gateway
  profiles:
    active: dev
#服務閘道器配置
zuul:
  host:
    connect-timeout-millis: 60000
    socket-timeout-millis: 60000
  #路由規則
  routes:
    api:
      path: /api/user/**
      serviceId: wc-client-user

好了,問題解決,我們重啟應用測試,測試結果和預期一樣。