当我尝试向 Azure 存储的云队列发送一些消息时,我随机收到以下异常。我正在使用 0.5.1 版的 azure android 存储客户端库。我没有使用 SAS,而是使用 Azure 帐户名称和密钥。请帮我解决这个问题。
com.microsoft.azure.storage.StorageException:服务器未能对请求进行身份验证。确保 Authorization 标头的值正确形成,包括签名。在 com.microsoft.azure.storage.core.StorageRequest.materializeException(StorageRequest.java:307) 在 com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:181) 在 com.microsoft.azure.storage .queue.CloudQueue.exists(CloudQueue.java:887) 在 com.microsoft.azure.storage.queue.CloudQueue.createIfNotExists(CloudQueue.java:526) 在 com.microsoft.azure.storage.queue.CloudQueue.createIfNotExists(CloudQueue .java:501)
编辑: 这是我导致异常的代码。正如我所说,有时它工作正常,异常随机发生。
try
{
// Retrieve storage account from connection-string.
CloudStorageAccount storageAccount =
CloudStorageAccount.parse(STORAGE_CONNECTION_STRING);
// Create the queue client.
CloudQueueClient queueClient = storageAccount.createCloudQueueClient();
// Retrieve a reference to a queue.
CloudQueue queue = queueClient.getQueueReference(QUEUE);
// Create the queue if it doesn't already exist.
queue.createIfNotExists();
// Create a message and add it to the queue.
CloudQueueMessage message = new CloudQueueMessage(msg);
queue.addMessage(message);
}
catch (Exception e)
{
// Output the stack trace.
e.printStackTrace();
}