Azure Rest API 附加现有托管磁盘

标签 azure azure-logic-apps

使用逻辑应用程序,从 HTTP 请求操作调用 Azure Rest API,我尝试创建托管磁盘(从快照),然后将该磁盘附加到现有 VM。 我可以从创建的快照中获取磁盘 - 这很容易。但是,我无法正确获取尝试附加磁盘的 Rest API 调用。

我有一个像这样的 PUT 请求: https://management.azure.com/subscriptions/xxxxx-xxxx-cxxxxxfxxxx-xxxxxx/resourceGroups/rgname/providers/Microsoft.Compute/virtualMachines/vm-test?api-version=2020-06-30

和一个 JSON 正文,例如: { “数据磁盘”:{ “缓存”:“无”, "createOption": "附加", “伦”:6, “托管磁盘”:{ “id”:“/subscriptions/xxxxx-xxxx-cxxxxxfxxxx-xxxxxx/resourceGroups/rgname/providers/Microsoft.Compute/disks/disk-12345-november”, “storageAccountType”:“Standard_LRS” } } }

这是有效的 JSON。 Azure 的错误是“错误请求”

{ “错误”: { "code": "资源读取失败", “目标”:“虚拟机测试”, "message": "策略需要完整的资源内容来评估请求。获取资源的请求'https://management.azure.com/subscriptions/xxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxx/resourceGroups/rg-name/providers/Microsoft .Compute/virtualMachines/vm-test?api-version=2020-06-30' 失败,状态为“BadRequest”。” } }

最佳答案

您使用的 REST API 是正确的,但您需要使用更完整的主体,如下所示:

{
  "properties": {
      "storageProfile": {
        "dataDisks": [
            {
                "createOption": "Attach",
                "lun": 1,
                "managedDisk": {
                    "id": "xxxxx"
                }
            }
        ]
    }
  }
}

关于Azure Rest API 附加现有托管磁盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64811668/

相关文章:

c++ - Windows系统加入Azure AD时获取登录用户的UserPrincipalName

Python SDK Azure 资源图响应不可迭代

c# - Azure 云服务 OnStop

azure - Redis session 状态 EVAL 超时

azure - 是否可以将 .net core Web api 发布到 azure 函数?

azure - 来自 Kusto 查询的连接器名称

azure - 用于具有托管身份的事件网格 API 连接的 ARM 模板

azure-logic-apps - Azure 逻辑应用批量重启运行失败

azure - 检查 Azure 虚拟机是否已关闭

Azure 逻辑应用程序 Sql 连接器