如何检查 netflix zuul 是否将请求重定向到适当的服务
How to check netflix zuul is redirecting request to appropriate service
能否请您帮助我提供代码片段,这将有助于确定 netflix zuul 是否正在将请求重定向到适当的服务。
我正在使用 spring 引导和 zuul 1.x。
RequestContext.getCurrentContext().getRequest().getRequestURI().toString();给我由浏览器客户端启动的 url,但是我无法弄清楚如何确保 zuul 在内部将此请求重定向到正确的 service.Which 将有助于在没有 运行 的情况下进行测试实际服务。
谢谢,
谢卡尔
尝试查看 pre-decoration 过滤器的源代码,基本上它所做的是根据提供的内容确定路由的位置和方式。还为下游请求
设置各种代理相关headers
context = RequestContext.getCurrentContext();
request = context.getRequest();
在上下文中调用 getRouteHost 方法object 它将为您提供所有与路由相关的信息,如协议、主机、端口等。
RequestContext.getCurrentContext().getRouteHost();
根据请求获取 uri 调用 getRequestURI object
request.getRequestURI()
注意:您可能遇到的问题是过滤器的顺序,因为 preDecorationFilter 的顺序为 5
@Override
public int filterOrder() {
return PRE_DECORATION_FILTER_ORDER;
}
实际上是 5(据我所知),请确保您的过滤器顺序大于 5,我尝试使用过滤器顺序 7 并且一切都按预期工作,将您的情报代码放在 运行 方法()
能否请您帮助我提供代码片段,这将有助于确定 netflix zuul 是否正在将请求重定向到适当的服务。
我正在使用 spring 引导和 zuul 1.x。
RequestContext.getCurrentContext().getRequest().getRequestURI().toString();给我由浏览器客户端启动的 url,但是我无法弄清楚如何确保 zuul 在内部将此请求重定向到正确的 service.Which 将有助于在没有 运行 的情况下进行测试实际服务。
谢谢, 谢卡尔
尝试查看 pre-decoration 过滤器的源代码,基本上它所做的是根据提供的内容确定路由的位置和方式。还为下游请求
设置各种代理相关headerscontext = RequestContext.getCurrentContext();
request = context.getRequest();
在上下文中调用 getRouteHost 方法object 它将为您提供所有与路由相关的信息,如协议、主机、端口等。
RequestContext.getCurrentContext().getRouteHost();
根据请求获取 uri 调用 getRequestURI object
request.getRequestURI()
注意:您可能遇到的问题是过滤器的顺序,因为 preDecorationFilter 的顺序为 5
@Override
public int filterOrder() {
return PRE_DECORATION_FILTER_ORDER;
}
实际上是 5(据我所知),请确保您的过滤器顺序大于 5,我尝试使用过滤器顺序 7 并且一切都按预期工作,将您的情报代码放在 运行 方法()