我正致力于与Azure Batch API集成,并根据我传递的凭据构建客户端对象。我想知道的是如何测试连接是否有效以及凭据是否正确?我无法在API上看到任何内容来执行此操作。您可以创建BatchClient对象,然后在其上调用操作以列出作业,池等,如果您的初始凭据错误,所有这些都会因复杂错误而失败。我想在尝试任何其他操作之前能够测试不正确的凭据。有谁知道怎么做?
var client = BatchClient.Open(new BatchSharedKeyCredentials(
string.Format("https://{0}.{1}.batch.azure.com",
_primaryBatchAccountName,
_primaryRegion),
_primaryBatchAccountName,
_primaryBatchAccountKey));
这是创建客户端对象的代码。但即使你传递了错误的值,它也不会抛出任何错误。当您尝试使用它时,您只会收到错误。
答案 0 :(得分:0)
BatchClient
没有保持持久连接"打开。"它只是在需要时(即当您使用方法时)向目标端点发出REST请求。
据我所知,没有办法确定你是否拥有"权利"在尝试使用BatchClient
实际与服务器通信之前,凭据值或端点数据。这是因为客户端不太可能知道哪些端点是有效的,也不可能知道什么是有效的"凭证看起来像,或者您指定的凭证是否正确(服务器必须验证)。
我能提出的最佳建议是尝试发出一个简单的API调用(如ListJobs或其他东西),并确保它成功完成。这应验证您的BatchClient
是否有效。