在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?
答案 0 :(得分:0)
我检查了Azure参考文档,发现Asynchronous Request (classic) REST
的引用包含Get Operation Status
REST API,需要<subscription-id>
,<request-id>
和请求标头{{1用于服务管理。请参阅https://msdn.microsoft.com/en-us/library/azure/ee460783.aspx。
然后,我查看了Azure SDK的JavaDocs,找到了类x-ms-version
和com.microsoft.windowsazure.core.OperationStatusResponse
。它们具有返回枚举com.microsoft.windowsazure.core.AzureAsyncOperationResponse
之一的函数getStatus()
。
有关详细信息,请参阅http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatusResponse.html和http://azure.github.io/azure-sdk-for-java/com/microsoft/azure/management/network/models/AzureAsyncOperationResponse.html以及http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatus.html。
它们适用于Azure服务管理。因此,您需要从maven repo com.microsoft.windowsazure.core.OperationStatus
http://mvnrepository.com/artifact/com.microsoft.azure/azure-svc-mgmt/0.9.0导入这些类,请参阅下面的maven配置:
azure-svc-mgmt
使用类<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-svc-mgmt</artifactId>
<version>0.9.0</version>
</dependency>
的函数OperationStatusResponse getOperationStatus(String requestId)
来获取对象com.microsoft.windowsazure.management.ManagementClient
以获得您的需求。请参阅http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/ManagementClient.html。
最诚挚的问候。