【问题标题】:zuul forwarding to different urls having same prefixzuul 转发到具有相同前缀的不同 url
【发布时间】:2018-09-15 05:46:34
【问题描述】:

我有 2 个在不同端口上运行的服务实例

它们的zuul转发属性是
对于 v1:

zuul.routes.app.path=/app/** zuul.routes.app.url=http://localhost:8081

对于 v2

zuul.routes.app.path=/app/v2/** zuul.routes.app.url=http://localhost:8082

我对 api/v2 的所有请求都进入 app/ 而不是 api/v2 是否有任何方法可以将 v1 配置为忽略对 api/v2 的调用和/或将其转发到 v2 url,因为 v1 的路径不能改变

【问题讨论】:

    标签: netflix-zuul


    【解决方案1】:

    声明路由顺序对zuul很重要。

    上面描述的发生是因为你已经配置了

    zuul.routes.app.path=/app/**
    

    急切地消耗所有响应。尝试按这样的顺序配置:

    zuul.routes.app2.path=/app/v2/**
    zuul.routes.app2.url=http://localhost:8082
    zuul.routes.app1.path=/app/**
    zuul.routes.app1.url=http://localhost:8081
    

    所以如果是特定的调用

    /app/v2/**
    

    它将首先匹配。如果没有,第二个匹配消耗所有请求到

    /app/**
    

    ...将被匹配。

    另请注意,路线的名称应不同:

    app1, app2
    

    您还可以阅读有关here 的信息。希望这会有所帮助...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-23
      • 2022-12-16
      • 1970-01-01
      相关资源
      最近更新 更多