2017-08-11 105 views
0

定制Zuul URL端点服务我有一组微服务的,称为“客户端 - 美孚”,其中foo是一些特定的第三方客户端的名称。在JHipster

使用那些名字,是创造一些真正丑陋的端点的网址,所以我想将它们转换成更加美好层级形式。

我添加了一个自定义PatternServiceRouteMapper,将serviceId client-Foo并将其转换为url client/Foo

这给出了我想要的url,但也打破了服务映射,因为它更改注册serviceId client/Foo;因此,当Zuul去路由它失败,因为有没有client/Foo服务,它的ID是client-Foo

,因为应用程序需要不同的“客户端 - *”服务的任意数目我不能硬编码的任何路径。

回答

0

通过查看ZuulProxyAutoConfiguration,您可以看到您可以替换一些bean来实现您的目标,特别是您应该考虑提供自己的接口实现RouteLocator接口或扩展DiscoveryClientRouteLocator类。 您的服务实例还可以在Eureka服务器中注册您的RouteLocator可以使用的metadataMap中的其他数据。

0

我只想补充的配置定义Zuul路线:

zuul: 
    routes: 
     client-foo: /foo/** 

此外,我会建议对具有在服务ID的破折号,因为它可以混淆配置服务器API(中/配置/富瞩目.yml其中profile是您希望获取配置的弹簧配置文件)。

+0

在配置文件中配置每个路由手册是一个不行。 – ThisIsNoZaku