问题描述
我在将Swagger文档导入Azure API管理网关中时遇到了Swagger和创建的URL的问题。
我们在网关中有多个API,并且由于网关的工作方式,每个API都必须具有离开域的不同路径,只有一个API没有离开域的路径。例如
- API A:http://example.com
- API B:http://example.com/calculator/b
- API C:http://example.com/calculator/c
每个API都有自己的功能,它们是由.NET Core 3.1 Web API生成的。端点的路径如下所示:
- api / a / get-something
- api / calculator / b / do-something
- api / calculator / c / do-something-else
当我为API A摇摇欲坠时,它使端点看起来像这样:
当我为API B大张旗鼓地加载时,我得到了:
http://example.com/calculator/b/api/calculator/b/do-something
我想要的是端点看起来像其中之一:
http://example.com/api/calculator/b/do-something
http://example.com/calculator/b/do-something
我需要这样做,而无需亲自修改网关。当我们进行更改时,我希望能够放入新的swagger json并使其更新模型并添加新的端点,而不必重新配置所有内容。
我可以为api规范配置一些东西以使api的基本URL包含api / b / subpath吗?生成JSON规范时使用的是配置还是装饰器?
如果我可以做到,每个端点只是URL的最后一段,那么我可以使用网关api设置将所有内容连接在一起。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)