0

我正在与 Azure Batch API 集成,并根据我传递的凭据构造一个客户端对象。我想知道的是如何测试以查看连接是否有效并且凭据是否正确?我在 API 上看不到任何执行此操作的内容。您可以只创建 BatchClient 对象,然后对其调用操作以列出作业、池等,如果您的初始凭据错误,所有这些都会失败并出现复杂错误。在尝试任何其他操作之前,我希望能够测试不正确的凭据。有谁知道如何做到这一点?

var client = BatchClient.Open(new BatchSharedKeyCredentials(
                                string.Format("https://{0}.{1}.batch.azure.com",
                                        _primaryBatchAccountName,
                                        _primaryRegion),
                                _primaryBatchAccountName,
                                _primaryBatchAccountKey));

这是创建客户端对象的代码。但即使您传递完全错误的值,它也不会引发任何错误。只有当您尝试对它执行任何操作时,您才会收到错误消息。

4

1 回答 1

0

BatchClient不会保持持久连接“打开” 。它只是在需要时(即当您使用方法时)向目标端点发出 REST 请求。

据我所知,在您尝试使用BatchClient与服务器进行实际通信之前,无法确定您是否拥有“正确的”凭据值或端点数据。这是因为客户端实际上不可能知道哪些端点是有效的,也不可能知道“有效”凭证的外观,或者您指定的凭证是否正确(服务器必须验证)。

我能提出的最佳建议是尝试发出一个简单的 API 调用(如 ListJobs 或其他东西)并确保它成功完成。这应该验证你BatchClient的工作。

于 2015-10-20T17:50:13.173 回答