Azure Storage のクラウド キューにメッセージを送信しようとすると、次の例外がランダムに発生します。Android 用の Azure ストレージ クライアント ライブラリのバージョン 0.5.1 を使用しています。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) at com.microsoft.azure.storage.queue.CloudQueue.createIfNotExists(CloudQueue.java:526) at 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();
}