我建立如租户名称包含每个URL中的多租户应用。例如,路线检索租户“测试”的所有当前用户是这样的:/ui/api/Test/users
。我目前工作的应用程序的一部分,任何其他应用程序将请求转发它支持我的数据库服务,允许客户端充当中间人的客户端。
你也许可以看到这是怎么回事。我使用Zuul转发我的路线,但不是所有的路线应以这种方式进行转发。有时候,前端会发送与启动请求/ui/api/
不属于数据库请求。比方说,这些看起来像这样的一个:/ui/api/Test/Foo
。我希望能够以这样的方式配置我的Zuul路线,我可以转发符合模式的所有URL /ui/api/*/users
(其中*是任意字符串),不转发任何人。
我当然有企图简单地使用/ui/api/*/users
,但是这将不会匹配任何路线。我还没有尝试过,但我认为它只是解释*作为网址的实际组成部分。我目前的解决办法是要匹配/ui/api/**
,然后添加**/Foo
到zuul.ignoredPatterns。此作品,但supoptimal,因为任何新的端点,我需要不被转发需要在这里添加。由于客户端是指在不同的项目中使用,转发的路线不会改变,但那些不应该是意志。这不是每个项目配置的,因此不是一个可行的解决方案。
这是我的application.properties的相关部分的样子:
zuul.ignoredPatterns = /**/login,/**/executeJobUrl,/**/createExecuteJobUrl
zuul.routes.user-manager.path = /ui/api/**
zuul.routes.user-manager.url = http://localhost:0/eis-user-manager/ui/api
zuul.routes.user-manager.stripPrefix = true
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句