使用JAVA API

时间:2016-08-23 13:03:27

标签: java azure

我正在寻找类似于this但使用JAVA rest API调用的东西。 我想获取所有资源(包括虚拟机,存储磁盘,网络设备等)的列表及其基本属性(如IP地址,磁盘空间等) 我尝试在this link之后进行API调用。

当我向此网址发出http请求时

"https://management.azure.com/subscriptions/"+subscriptionId+"/resourceGroups/"+resourceGroupName+"/providers/Microsoft.Compute/virtualMachines?api-version="+apiVersion

但是我收到401错误。我拨打了正确的网址吗?如果不是我应该拨打哪个网址?

1 个答案:

答案 0 :(得分:2)

  

但是我收到401错误。我拨打了正确的网址吗?如果不   我应该拨打哪个网址?

您正在调用正确的网址,但是您为API调用提供了错误的参数。您提到的link用于拨打Azure Service Management API电话,但您需要点击的是拨打Azure Resource Manager (ARM) API个电话。

与Azure Service Management API类似,需要对ARM API请求进行身份验证。如果是前者,则使用管理证书对请求进行身份验证。如果是后者,则需要使用通过针对Azure AD对用户进行身份验证而获得的令牌。

有关验证/授权ARM API请求的详细信息,请参阅此链接:https://azure.microsoft.com/en-us/documentation/articles/resource-manager-api-authentication/

为了列出资源组中的所有资源,您绝对可以使用ARM REST API。但是现在可以直接使用SDK。要了解有关这些SDK的更多信息,请参阅以下链接:https://azure.microsoft.com/en-in/blog/azure-resource-manager-preview-sdks/