c# - Azure Batch客户端,如何测试有效性?

标签 c# .net azure cloud azure-batch

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

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

这是创建客户端对象的代码。但即使您传递给它完全错误的值,它也不会抛出任何错误。仅当您尝试对其执行任何操作时才会出现错误。

最佳答案

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

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

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

关于c# - Azure Batch客户端,如何测试有效性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33085648/

相关文章:

c# - ACE oleDb 驱动程序无法处理巨大的 excel 文件

c# - 如何在标签中加载数组?

c# - 当作为 IIS7 应用程序发布时,MVC 4 捆绑中断

.net - .Net Nest中的ElasticSearch过滤器聚合

azure - 如何使用 putty 或 mac 终端在本地访问 azure web 应用程序控制台或 kudu 控制台?

azure - 如何将消息添加到azure webjobs队列

c# - 使用 Swagger 的 Web API

新项目的 Java 或单声道

c# - 使用 AutoPoco 填充列表属性

azure - 将authorization.json 与Azure Functions 结合使用会破坏门户