Azure Rest API-创建Web应用程序-错误的请求

时间:2019-03-30 16:50:29

标签: rest azure azure-web-sites

我正在尝试使用Azure REST API来创建新的Web应用as documented here

我正在使用Authorization = Bearer xxxx令牌,该令牌是通过https://management.azure.com/的范围和资源创建的。

已注册的应用程序具有Microsoft Graph Api权限Sites.Manage.AllApplication.ReadWrite.All

我正在对https://management.azure.com/subscriptions/{subID}/resourceGroups/{resGrp}/providers/Microsoft.Web/sites/{newName}?api-version=2016-08-01进行PUT操作

我正在使用以下内容指定application/json的内容类型:

{
    "location":"Central US",
    "properties":
    {
        "cloningInfo":
        {
            "sourceWebAppId":"subscriptions/{subID}/resourceGroups/{resGrp}/providers/Microsoft.Web/sites/{cloneFromName}",
            "overwrite":true,
            "ignoreQuotas":true,
            "correlationId":"some random text??"
        }
    }
}

我也尝试过类似的身体

{
    "location":"Central US",
    "properties.cloningInfo":
    {
        "sourceWebAppId":"subscriptions/{subID}/resourceGroups/{resGrp}/providers/Microsoft.Web/sites/{cloneFromName}",
        "overwrite":true,
        "ignoreQuotas":true,
        "correlationId":"some random text??"
    }
}

我能够成功呼叫在this documentation指定的列表站点。

我认为我要么具有错误的Api权限,要么体内缺少一些必需的信息。

1 个答案:

答案 0 :(得分:1)

您在正文中错过了ServerFarmId,正文应该是

{
    "location":"Central US",
    "properties":
    {
        "cloningInfo":
        {
          "sourceWebAppId":"{Resource ID of the webpp you want to clone}",
            "overwrite":true,
            "ignoreQuotas":true,
            "correlationId":"correlationId1"
        },
      "ServerFarmId":"{Resource ID of the associated App Service plan}"
    }
}

此外,您需要确认您的服务计划是否支持克隆应用程序功能。克隆应用程序是一项功能,仅适用于标准应用程序服务计划上托管的应用程序。在Azure门户上单击“克隆应用程序”时,您将找到提示。 enter image description here

您还可以在响应中找到更多详细信息。 enter image description here