Azure REST API 等效于 az webapp list-runtimes

Azure REST API equivalent for az webapp list-runtimes

我找不到与此 azure cli 命令等效的任何 REST API:

az webapp list-runtimes

我在这里寻找 Golang SDK 对它的支持:https://github.com/Azure/azure-sdk-for-go

关于如何使用 Go SDK 获取 Azure 支持的运行时列表有什么建议吗?

Go SDK 中似乎没有列出 Web 应用程序运行时的方法,这个 azure cli 的 REST API 等价物是这个 - Provider - Get Available Stacks, 可以直接通过Go调用API

样本:

GET https://management.azure.com/providers/Microsoft.Web/availableStacks?osTypeSelected=Linux&api-version=2019-08-01

GET https://management.azure.com/providers/Microsoft.Web/availableStacks?osTypeSelected=Windows&api-version=2019-08-01

获取用于调用 REST 的令牌 API、register an AD App, Get values for signing in and create a new application secret

然后导航到门户 -> 您的订阅 -> Access control (IAM) -> Add -> 添加您的 AD 应用程序作为 RBAC 角色,例如Contributor, Owner, 详情如下 this.

在代码中,使用ClientCredentialsConfig via the values got before to get the token, then you can use the token to call the REST API, details about auth, refer to - Use an authentication client。您也可以使用其他身份验证方法,这取决于您的要求。

更新:

看起来 azure-go-sdk 具有可用于获取可用堆栈的提供程序客户端。

https://github.com/Azure/azure-sdk-for-go/blob/master/services/web/mgmt/2020-06-01/web/provider.go#L45