2015-12-30 2 views
0

У меня есть ошибка, связанная с хранением памяти Azure Blob, когда я использую приведенный ниже код для загрузки файла на сервер Azure blob.com.microsoft.windowsazure.services.core.storage.StorageException: сервер не смог аутентифицировать запрос

CloudStorageAccount account; 
CloudBlobClient serviceClient; 
CloudBlobContainer container; 
CloudBlockBlob blob; 

final String bucketName = PropertyReader.getValue("aws.properties", bucket); 

account = CloudStorageAccount.parse(storageConnectionString); 
serviceClient = account.createCloudBlobClient(); 
// Container name must be lower case. 
container = serviceClient.getContainerReference(bucketName); 
container.createIfNotExist(); 

// Set anonymous access on the container. 
BlobContainerPermissions containerPermissions; 
containerPermissions = new BlobContainerPermissions(); 
containerPermissions.setPublicAccess(BlobContainerPublicAccessType.CONTAINER); 
container.uploadPermissions(containerPermissions); 

// Upload an image file. 
blob = container.getBlockBlobReference(imageName); 
blob.upload(imageStream, imageArray.length); 

Я использовал этот код и строил на локальном компьютере mycomputer (Windows 8), он работает нормально. Но когда я раскрываю к серверу Linux это отловить исключение

com.microsoft.windowsazure.services.core.storage.StorageException: Сервер не удалось проверить подлинность запроса. Убедитесь, что значение заголовка авторизации сформировано правильно, включая подпись.

Я нашел этот вопрос по соответствующей теме - Azure API The server failed to authenticate the request , но она по-прежнему не поможет решить мою проблему. Как это исправить?

+1

Пожалуйста, не используйте Stack Snippets для добавления кода, если он не является исполняемым кодом HTML/CSS/JS. Я изменил фрагмент кода на обычные блоки кода, исправил форматирование и улучшил некоторые грамматики. – Harry

+0

кто-нибудь может помочь мне :( – Harry

ответ

0

Используется ли это с помощью клиентской библиотеки Java? Если это работает на вашей локальной машине, но не на вашем Linux-сервере, это может иметь какое-то отношение к прокси-серверу кеширования или что-то подобное между клиентом и сервером. В любом случае, если вы видите, что один и тот же код работает в одном месте, но не в другом, представляется вероятным, что это проблема конфигурации на вашем конце, а не ошибка библиотеки.

+0

Здравствуйте, Питер. Что мне нужно для настройки прокси-сервера или сервера. Можете ли вы мне помочь? – Harry

+0

Вам нужно будет убедиться, что между вашим клиентом и вашим сервером нет кэширования - у меня нет понимания о том, как вы настроили одну из этих частей. Если вы можете предоставить идентификатор запроса для неудавшегося запроса, я могу взглянуть еще раз, но это мое предположение. –

Смежные вопросы