【发布时间】:2020-10-20 13:58:32
【问题描述】:
我们正在使用 Swashbuckle (v 3.2.2) 为 Azure Function Apps (v3) 生成 Swagger (OpenAPI) 文档。我们可以使用下面的 PowerShell 脚本在 APIM 中导入 Azure Function App:
$specificationUrl="https://myfunctionapp.azurewebsites.net/api/swagger/json?code=tdkaksas8393dkkfkr04kfkkfkf9933kk9=="
$apiContext = New-AzApiManagementContext -ResourceGroupName "MyResourceGroup" -ServiceName "MyServiceName"
Import-AzApiManagementApi -Context $apiContext -SpecificationFormat "OpenApi" -SpecificationUrl $specificationUrl -Path apis
问题是在 APIM 中未使用正确设置导入 Azure 函数应用。导入操作的后端目标类型应为“Azure 资源”,但目标类型设置为“HTTP(s) 端点”。除此之外,我们甚至没有将“Azure Resource”作为选项,而是显示“Azure Logic App”。当我们手动执行时,它会显示正确的后端目标,即“Azure 资源”。详情请参考截图here。
我们正在使用 Swashbuckle 版本 3.2.2 Swashbuckle 并将此 link 用于为 Azure Functions 实施 Swagger(OpenAPI)。
【问题讨论】:
标签: c# azure azure-api-management swashbuckle azure-function-app