Netflix zuul @EnableZuulServer的用例

Netflix zuul @EnableZuulServer的用例,netflix-zuul,spring-cloud-netflix,Netflix Zuul,Spring Cloud Netflix,我想知道@EnableZuulServer将提供什么用例 在我的例子中,我想为微服务使用ZuulFilter框架,以及在通过ZuulFilter框架后要调用的控制器上的spring handler映射。不希望代理转发 这有可能吗?怎么可能?我们能否在此场景中使用@EnableZuulServer模式?我没有找到太多的文档来理解@EnableZuulServer是如何工作的 有人可以解释和帮助吗?来自Spring Cloud Netflix文档: SpringCloudNetflix安装了许多过滤

我想知道
@EnableZuulServer
将提供什么用例

在我的例子中,我想为微服务使用ZuulFilter框架,以及在通过ZuulFilter框架后要调用的控制器上的spring handler映射。不希望代理转发

这有可能吗?怎么可能?我们能否在此场景中使用
@EnableZuulServer
模式?我没有找到太多的文档来理解
@EnableZuulServer
是如何工作的


有人可以解释和帮助吗?

来自Spring Cloud Netflix文档:

SpringCloudNetflix安装了许多过滤器,这些过滤器基于 注释用于启用Zuul
@EnableZuulProxy
@EnableZuulServer
。换句话说,
@EnableZuulProxy
包含所有 由
@EnableZuulServer安装的过滤器
。中的附加过滤器 “代理”启用路由功能。如果你想要一个“空白”的Zuul,你 应使用
@EnableZuulServer

基于此,你的问题的答案是:是的

您可以添加
@EnableZuulServer
注释,您将不会获得代理转发,但仍然可以使用
ZuulFilter
框架

也就是说,如果您只是想过滤请求和响应,那么可以使用标准的Servlet
filter
FilterRegistrationBean
()

就用例而言,当您需要比
@EnableZuulProxy
更多的定制行为时,您应该使用
@EnableZuulServer


因此,例如,出于调试目的,您可能希望能够支持一个请求头,当请求来自特定IP范围内时,该请求头将您的请求代理到指定主机。

来自Spring Cloud Netflix文档:

在这种情况下,进入Zuul服务器的路由仍然由 正在配置“zuul.routes.*”,但没有服务发现没有 代理,因此“serviceId”“url”设置被忽略