Я неожиданно получаю ошибку Bad Request (400) при использовании эмулятора Azure Storage при попытке CreateIfNotExists. Ответ на внутреннее исключение говорит: «Значение для одного из HTTP-заголовков не в правильном формате». Все таблицы существуют, данные находятся в таблицах, все работает до обновления к моим пакетам NuGet. Оглядываясь вокруг, кажется, что распространенной причиной является обновление для Azure Storage Client Library (теперь в 5.0.0), которое создает несоответствие. Я обновил Azure SDK до версии 2.6 (так как у меня есть VS2012). Это приносит эмулятору хранения до 4.0.0.0, но все равно не повезло ... такая же ошибка. Это отчасти плохо, что внезапно обновление пакета пакета пакета заставляет все это сломать и полностью убивает мой довольно большой проект. Есть идеи?Azure Storage Emulator 400 Неверный запрос
ответ
Я не знаю, является ли это проблемой для кого-либо еще, но это то, что я понял, ...
- хранения Emulator 4.1.0.0 это один для использования с Azure Storage Клиентская библиотека 5.0.0
- Хранение Эмулятор 4.1.0.0 поставляется с Azure SDK 2.7.
- Azure SDK 2.7 не будет работать с Visual Studio 2012.
- Azure SDK 2.6 для VS2012 имеет эмулятор 4.0.0.0. Я не знаю, что совместима с библиотекой клиентских хранилищ ... Я пробовал 4.3.0.0, 5.0.0.0 и 5.0.2, но не повезло
.
Мои «философские» проблемы с этой целой вещью являются ...
- Я не могу найти различимую связь между Storage Emulator версий и версиями библиотеки хранения Клиента .... Цифры не " совпадение"; нет ошибок, зависимостей или исключений, которые сообщают вам отношения; Я не могу найти таблицу поиска, перекрестных ссылок или таблицу , которая описывает правильную комбинацию библиотек.
- Теория «просто использовать последнюю версию» не работает, потому что в прошлом они выпустили новые версии библиотеки Client Storage (3.0.0.0) с рабочим эмулятором и теперь «последняя версия» каждый отдельно в зависимости от которых SDK доступен для сборки среды (VS2012 против VS2015)
Я понимаю, что библиотека хранения клиента не является технически «зависимой» на эмуляторе ... Вам не нужно эмулятор для использования Azure Storage.Однако было бы неплохо, если бы некоторые из этих отношений были немного проще для программного обеспечения, как я, чтобы понять.
Похоже, что Storage Client Library 6.0.0 использует версию API REST 2015-04-05, которая поддерживается только в версии эмулятора 4.2. –
У кого-то другого, имеющего ту же самую проблему и ответ от команды Azure, https://github.com/Azure/azure-storage-net/issues/183 - это обновление до версии эмулятора хранилища 4.2. –
Если я не ошибаюсь, вам также необходимо будет обновить клиентские библиотеки до 4.x.
Вы видите, что каждая версия клиентской библиотеки хранения соответствует версии REST API хранилища, а также для эмулятора хранилища. Если вы используете эмулятор хранилища версии 4.0, вы не можете использовать библиотеку клиента хранилища 5 с этим. Вам нужно будет использовать версию 4.x.
Если вы хотите использовать клиентское хранилище библиотеки версии 5, то у вас есть 2 варианта: использование
- Марка последней версии эмулятора хранения или
- Do ваше развитие против счет облачного хранилища.
Эмулятор хранения является частью Azure SDK. Если у вас есть VS2012, тогда SDK равен 2.6. Эмулятор хранения для версии 2.6 - 4.0.0.0. Последняя клиентская библиотека хранения - 5.0.0. Итак, вы говорите, что вам нужно обновить до SDK 2.7 (и, следовательно, VS2015), чтобы получить версию эмулятора, которая работает с Client Library 5.0.0.0? Это похоже на плохую заднюю дверь, чтобы заставить людей обновлять Visual Studio, не зная об этом. – WirelessG
Да. Чтобы использовать последнюю версию эмулятора хранения, вам понадобится последняя версия SDK (2.7), которая поддерживается как на VS 2013, так и на 2015 год (к сожалению, VS 2012, к сожалению). –
Кроме того, изменение библиотеки хранилища клиентов до 4.3.0.0 (для «соответствия» моему эмулятору 4.0.0) также не работает. Никаких исключений, только каждый вызов возвращает молчащий «ложь». – WirelessG
В моем случае проблема была с Контейнерное имя, которое имеет строгие требования к именованию.
А именно:
- Только строчными буквы, цифры и дефис допускаются
- Должно быть от 3 до 63 символов
Для получения дополнительной информации, вид Naming and Referencing Containers, Blobs, and Metadata на MSDN.
- 1. Azure table storage (400) Неверный запрос
- 2. azure storage emulator 1603
- 3. "400 Ошибка: Неправильный запрос" Azure Storage Connection
- 4. Azure Storage Emulator через NuGet?
- 5. Azure Storage Emulator - (400) Плохой запрос - HTTP-заголовки не в правильном формате
- 6. Azure table storage Неверный ввод
- 7. AngularJS 400 Неверный запрос
- 8. Ошибка 400 (неверный запрос)
- 9. .ajax() Неверный запрос 400
- 10. Azure UploadFromFileAsync возвращает неверный запрос
- 11. Azure Storage Emulator не удается установить
- 12. Ошибка установки Windows Azure Storage Emulator 4.1
- 13. Azure Storage Emulator - Как указать иерархический путь?
- 14. Работа с Azure Storage Emulator возвращает 404
- 15. Невозможно установить Azure Storage Emulator 4.1
- 16. azure local emulator emulator issue 400 bad request
- 17. Приложение Debug Azure без использования Azure Storage Emulator
- 18. Debugging 400 Неверный ответ Запрос
- 19. SignalR 2.0 - 400 Неверный запрос
- 20. Ошибка AJAX: 400 Неверный запрос
- 21. JQuery POST 400 Неверный запрос
- 22. загрузки файла - Неверный запрос (400)
- 23. Ошибка HTTP 400 Неверный запрос
- 24. Azure AD OAuth2 Ошибка запроса токена доступа - 400 Неверный запрос
- 25. Какая версия WindowsAzure.Storage поддерживается Azure Storage Emulator 4.3?
- 26. Запрос клиента WCF возвращает неверный запрос (400)
- 27. azure storage emulator (Table) возвращает 400 ошибочных запросов или 403 запрещено
- 28. Android Emulator не запускается - неверный запрос
- 29. Azure Autoscaling (400) Плохой запрос
- 30. Прием 404 Ответ При попытке использовать Windows Azure Storage Emulator
Какую версию библиотеки клиента хранения вы используете в своем проекте? –
5.0.0 Я также пробовал новый предварительный выпуск, но он тоже не работал. – WirelessG