0

在 Azure 资源组 java API 中,没有根据请求 ID 获取操作状态的功能。现在在sdk中获取运行状态的方法是什么?

服务管理 API 中存在类似的功能,例如服务管理客户端: http ://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/compute/ComputeManagementClient.html#getOperationStatus- java.lang.String-

类似的功能在客户端中不存在,例如: http ://azure.github.io/azure-sdk-for-java/com/microsoft/azure/management/compute/VirtualMachineOperations.html

我看到一个类似的功能:

LongRunningOperationResponse getLongRunningOperationStatus(java.lang.String operationStatusLink)

Get Operation Status 操作返回指定操作的状态。

如何生成 operationStatusLink ?

4

1 回答 1

1

我查看了 Azure 参考文档,发现该参考Asynchronous Request (classic) REST具有Get Operation StatusREST API what require<subscription-id>和Service Management 的<request-id>请求标头x-ms-version。请参考https://msdn.microsoft.com/en-us/library/azure/ee460783.aspx

然后,我查看了 Azure SDK 的 JavaDocs 并找到了 Classcom.microsoft.windowsazure.core.OperationStatusResponsecom.microsoft.windowsazure.core.AzureAsyncOperationResponse. 它们具有getStatus()返回 Enum 之一的功能com.microsoft.windowsazure.core.OperationStatus。有关它们的详细信息,请参阅http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatusResponse.htmlhttp://azure.github.io/azure-sdk -for-java/com/microsoft/azure/management/network/models/AzureAsyncOperationResponse.htmlhttp://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatus.html .

它们用于 Azure 服务管理。因此,您需要从 maven 存储库azure-svc-mgmt http://mvnrepository.com/artifact/com.microsoft.azure/azure-svc-mgmt/0.9.0导入这些类,请参阅下面的 maven 配置:

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>azure-svc-mgmt</artifactId>
    <version>0.9.0</version>
</dependency>

并使用OperationStatusResponse getOperationStatus(String requestId)Class的功能com.microsoft.windowsazure.management.ManagementClient来获取 ObjectOperationStatusResponse以获得您想要的。请参考http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/ManagementClient.html

此致。

于 2015-11-05T02:11:20.597 回答