我正在使用带有服务和路由的kong,需要创建一个具有许多路由的服务,其中一些路由是JWT,而其他则没有,类似于下一张表。
| Route | Route in service | Plugins JWT | |---------------|------------------|-------------| |/service1 | / | True | |/service1/url1 | /url1 | False | |/service1/url2 | /url2 | False |
但是,香港的路线非常简单,我尝试使用“ Strip Path”选项,但发送所有路线:
没有“条形路径”
“ / service1 / url1 => /”
带有“条形路径”
“ / service1 / url1 => / service1 / url1”
我需要
“ / service1 / url1 => / url1”
我只看到一种选择,为每个路径创建一个带有一条“路由”的“服务”,并在服务中配置路径,例如。
service1:{host:service1,path:null,route {path:[/ service1]}}}
service2:{host:service1,路径:/ url1,路由{路径:[/ service1 / url1]}}
但是这种解决方案效果不好。
答案 0 :(得分:0)
我曾经这样做过以解决相同的问题
service1
route1
/ service1-route1-> /
route2
/ service1-route2-> /
您可以请求为:/ service1-route2 / {url1} / xxx
route3
/ service1-route3-> /
您可以请求为:/ service1-route3 / {url2} / xxx
可能有帮助
答案 1 :(得分:0)
您可以使用无服务器发布功能插件(https://docs.konghq.com/hub/kong-inc/serverless-functions/)并编写自定义lua代码,以从请求中删除“ / service”字符串