Проблемы с запросами данных Cosmos DB и Azure.iOS - PullRequest
0 голосов
/ 04 сентября 2018

Я довольно новичок в Cosmos DB, поэтому для начала я создал экземпляр на основе MongoDB. Затем я хотел добавить к нему документ, просто как тест «Hello World». Для этого я использую собственное приложение для iOS, которое использует официальную библиотеку Azure.iOS от GitHub.

Как только я запускаю команду «создать» (с правильным установленным идентификатором коллекции) в AzureData, платформа возвращает мне «успех» в ответе с идентификатором ресурса и т. Д. Однако, как только я использую внешний инструмент, такой как Robo3T или Оболочка Монго, данная коллекция считается пустой или возвращает эту ошибку:

{"code":400,"body":"Command find failed: Unknown server error occurred when processing this request.."}

Однако соединение с БД успешно, так как я могу отображать статистику сбора и т. Д.

Теперь, если я снова открою свое приложение и запросю документы коллекции через среду Azure.iOS, он вернет мне только что сохраненный результат. Это заставляет меня чувствовать себя немного озадаченным. Я пропустил что-то внутри приложения, или все инструменты MongoDB не перечислили документы? Документация по фреймворку довольно скудна, поэтому любая помощь будет признательна.

1 Ответ

0 голосов
/ 05 сентября 2018

На самом деле проблема, которая произошла для меня, очень трудно отлаживать Поскольку сообщения об ошибках ничего не говорят.

My Cosmos DB использует серверную часть MongoDB, которая, похоже, создает проблемы вместе с упомянутой платформой Azure.iOS.

Проблема дополнительно описана здесь: Сбой запроса Cosmos Mongodb, но обозреватель хранилища Azure работает нормально?

TL; DR, что произошло, так это то, что платформа iOS не создала "_id", который необходим MongoDB и который приводит к повреждению данных. Мне пришлось переключиться с MongoDB на SQL-сервер. Это решило мою проблему, и теперь все работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...