Swagger和Azure API管理网关

问题描述

我在将Swagger文档导入Azure API管理网关中时遇到了Swagger和创建的URL的问题。

我们在网关中有多个API,并且由于网关的工作方式,每个API都必须具有离开域的不同路径,只有一个API没有离开域的路径。例如

每个API都有自己的功能,它们是由.NET Core 3.1 Web API生成的。端点的路径如下所示:

  • api / a / get-something
  • api / calculator / b / do-something
  • api / calculator / c / do-something-else

当我为API A摇摇欲坠时,它使端点看起来像这样:

http://example.com/api/a/get-something

当我为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 (将#修改为@)