如何使用 Azure-CLI 将规范导入到 Azure APIM 的版本集中
How to import a specification into a versionset of Azure APIM using Azure-CLI
我正在尝试使用 Azure CLI 使用新规范更新 Azure API 管理服务中版本集中的现有版本。
我知道它确实支持将其导入为 API 没有版本集:
az apim api import `
--path "/as" `
--resource-group "myResourceGroup" `
--service-name "test-apim" `
--api-id "test-apim" `
--specification-format "OpenApiJson" `
--specification-path "..\swagger.json"
而且我还知道您可以使用 Azure Powershell 模块获取版本集并使用它来上传新规范:
$apiMgmtContext = New-AzApiManagementContext `
-ResourceGroupName "myResourceGroup" `
-ServiceName "test-apim"
$versionSet = Get-AzApiManagementApiVersionSet -Context $apiMgmtContext |
Where-Object { $_.DisplayName -eq "my-version-set" } |
Sort-Object -Property ApiVersionSetId -Descending |
Select-Object -first 1
Import-AzApiManagementApi `
-Context $apiMgmtContext `
-ApiVersionSetId $versionSet.ApiVersionSetId `
-ServiceUrl "http" `
-SpecificationFormat "OpenApiJson" `
-SpecificationPath "..\swagger.json" `
-Path "/as" `
-ApiId "test-apim"
但是有人知道这是否可以使用 az cli 完成,因为 powershell 模块最终会过时吗?
查看documentation,支持版本集
您需要使用参数--api-version-set-id
:
az apim api import `
--path "/as" `
--resource-group "myResourceGroup" `
--service-name "test-apim" `
--api-id "test-apim" `
--specification-format "OpenApiJson" `
--specification-path "..\swagger.json" `
--api-version-set-id "my-version-set-id"
也没有迹象表明 Az Powershell 将暂时过时。
我正在尝试使用 Azure CLI 使用新规范更新 Azure API 管理服务中版本集中的现有版本。
我知道它确实支持将其导入为 API 没有版本集:
az apim api import `
--path "/as" `
--resource-group "myResourceGroup" `
--service-name "test-apim" `
--api-id "test-apim" `
--specification-format "OpenApiJson" `
--specification-path "..\swagger.json"
而且我还知道您可以使用 Azure Powershell 模块获取版本集并使用它来上传新规范:
$apiMgmtContext = New-AzApiManagementContext `
-ResourceGroupName "myResourceGroup" `
-ServiceName "test-apim"
$versionSet = Get-AzApiManagementApiVersionSet -Context $apiMgmtContext |
Where-Object { $_.DisplayName -eq "my-version-set" } |
Sort-Object -Property ApiVersionSetId -Descending |
Select-Object -first 1
Import-AzApiManagementApi `
-Context $apiMgmtContext `
-ApiVersionSetId $versionSet.ApiVersionSetId `
-ServiceUrl "http" `
-SpecificationFormat "OpenApiJson" `
-SpecificationPath "..\swagger.json" `
-Path "/as" `
-ApiId "test-apim"
但是有人知道这是否可以使用 az cli 完成,因为 powershell 模块最终会过时吗?
查看documentation,支持版本集
您需要使用参数--api-version-set-id
:
az apim api import `
--path "/as" `
--resource-group "myResourceGroup" `
--service-name "test-apim" `
--api-id "test-apim" `
--specification-format "OpenApiJson" `
--specification-path "..\swagger.json" `
--api-version-set-id "my-version-set-id"
也没有迹象表明 Az Powershell 将暂时过时。