多条 Zuul 路由到一项服务

Posted

技术标签:

【中文标题】多条 Zuul 路由到一项服务【英文标题】:Multiple Zuul routes to one service 【发布时间】:2015-04-24 02:16:57 【问题描述】:

我看到的大多数示例都是一个路由定义到一个服务。

这样的事情:

zuul:
  routes:
    myserver:
      path: /mypath/**

假设我想将多条路由路由到一个服务,所以实际上它会是这样的:

zuul:
  routes:
    myserver:
      path: /mypath/**, /anotherpath/**

这在配置文件中是不允许的,也不允许你有两次相同的路由名称。有什么真正的方法可以做到这一点吗?

【问题讨论】:

这个问题+答案刚刚为我解决了另一个问题:如果您想要一个统一的 API 路由到许多服务怎么办?例如我有 3 项服务,并希望它们都可以通过 /services/** 访问 【参考方案1】:

类似这样的东西可能是可能的,但我还没有尝试过

zuul:
  routes:
    myserver_mypath:
      path: /mypath/**
      serviceId: myserver
    myserver_another_path:
      path: /anotherpath/**
      serviceId: myserver

【讨论】:

可以确认,工作正常。使用它来选择性地公开 API 的某些部分。 @spencergibb 我们不能使用数组作为path 属性的值吗? 目前没有,没有。 @spencergibb,/mypath/** 和 /mypath/*... 或单 '' 和双 '' 有什么区别? double ** 表示斜线的任何深度,请阅读此处link

以上是关于多条 Zuul 路由到一项服务的主要内容,如果未能解决你的问题,请参考以下文章

SpringCloud系列八:Zuul 路由访问(Zuul 的基本使用Zuul 路由功能zuul 过滤访问Zuul 服务降级)

springCloud(14):使用Zuul构建微服务网关-路由端点与路由配置详解

zuul网关

微服务架构 | 6.1 使用 Zuul 进行服务路由 #yyds干货盘点#

zuul网关

zuul网关