获取/生成Azure APIm API的swagger url

问题描述 投票:0回答:2

我在 Azure APIm 中设置了 api,并且各个操作通过各自的 url 进行工作。 我想要这个 API 的 Swagger uri,它具有天蓝色域并列出其中的所有操作。

例如,默认情况下 APIm 提供了一个名为“Echo API”的示例 api,其 url 变为:https://testresource.azure-api.net/echo

现在,我了解到 API 上下文菜单上有一个选项可以将其导出为 Swagger 格式。 但我正在寻找的是这样一个在线呈现此规范的网址: https://testresource.azure-api.net/echo/swagger

这里有类似的问题有一个为 swagger/ui/index.js 添加端点的答案。我相信在本机 api 中有一个端点并配置为一个操作。 APIm 有没有办法为已经设置的 API 生成/提供这样的 url?

azure url swagger azure-api-management
2个回答
0
投票

谢谢 MayankBargali-MSFT Sam Cogan 将您的建议作为答案发布以帮助其他社区成员。

  1. 您需要使用 Create/Update API 传入 swagger 文件的 URL。你可以找到一个例子 这里
  2. 不幸的是,API 仅接受它作为 swagger 文件,同时导入 请求中记录的 swagger 文件 身体。 您可以尝试将 swagger 文件上传到您的存储帐户或任何 可公开访问的路径。

参考:https://learn.microsoft.com/en-us/answers/questions/687043/import-swagger-file-programatically-to-azure-apim.html.


0
投票

要从 APIM(例如 OpenAPISpec 或 WSDL)导出合约,您需要了解此文档:

https://learn.microsoft.com/en-us/rest/api/apimanagement/api-export/get?view=rest-apimanagement-2024-05-01&tabs=HTTP#response

我有一个问题,因为参数 &api-version=2024-05-01 不适合这个请求,你需要使用以前的版本,比如 &api-version=2022-08-01

基本上,你的命令是

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?format={format}&export=true&api-version=2024-05-01

我建议您阅读文档,了解参数。

祝你好运

© www.soinside.com 2019 - 2024. All rights reserved.