我正在考虑将zuul 2作为潜在的动态路由解决方案,并尝试使用基于网络的简单示例。
方案
/apache
- >代理www.apache.org /npr
- >代理www.npr.org 步骤
假设 www.apache.org , www.npr.org 和 www.netflix.com 被视为 origin ,将以下内容添加到zuul.properties
文件中:
zuul.origins=apache=www.apache.org,npr=www.npr.org,netflix=www.netflix.com
在入站过滤器中,分析请求以确定其是/npr
还是/apache
(similar to this example),并相应地设置routeVip
和端点过滤器
if ( request.getPath() == "/apache" ) {
context.setRouteVIP( "apache" )
} else if ( request.getPath() == "/npr" ) {
context.setRouteVIP( "npr" )
} else {
context.setRouteVIP( "netflix" )
}
context.setEndpoint( "endpoint.ZuulNFRequest" )
,使用默认的NfProxyEndpoint
代理到相应的端点
问题
localhost:7001
发送请求时,我一直收到默认的hello world
响应,我没有正确设置。我做错了什么?context.setRouteHost()
与context.setRouteVIP()
一起设置为这样的工作吗? (analogously to what zuul 1 does)