我想为我的 Zuul 代理实现自定义过滤器。现在,我知道有很多关于这个主题的讨论 here我查看了提供的答案,包括过滤器和 Spring Cloud 文档的示例,这些文档我看了好几次。我试图复制一些过滤器内容以供我使用,但没有奏效。
我有一个 Eureka 服务器,注册了 3 个独立的服务,其中一个是其他两个服务的前门,从每个服务收集信息并检索它。
我希望能够做的是重新路由 Zuul 在进程开始时收到的请求,通过特定服务重定向它们,使用 URL 参数来确定应该针对哪个进程而不是另一个进程。
我已经创建了一个标记为 @Component
的过滤器注释,实现 ZuulFilter
.我不知道的是如何使重定向工作,以及使用哪些方法。
所以,问题是:如何使用 URL 参数将传入请求重定向到不同的注册服务?
最佳答案
看 PreDecorationFilter
例如,根据 url 路径匹配路由(即 /myservice
)。如果它匹配一个完整的 url,它会设置 routeHost
在功能区上下文中,否则设置 serviceId
(这将使用功能区来路由)。你需要写一些类似的东西来匹配参数。
关于spring - 创建自定义 Zuul 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31055736/