cosmosdb геопространственный поиск вверх вернуться пустым - PullRequest
0 голосов
/ 12 декабря 2018

Я использую cosmosDB для поиска в $ geowithin, и когда я запускаю запрос в проводнике данных cosmosdb, он работает нормально и возвращает правильный набор.Когда я запускаю его в узле JS, используя MongoClient, я получаю пустой набор.

Это запрос, который я запустил в проводнике данных cosmosdb:

   {CurrentLoc: {
            $geoWithin: {
                $centerSphere: [[-122.0312186,37.33233141], 0.0025232135647961246]
            }
        }}

, который вернул правильный список документов

Это в моем приложении узла:

var toFind = {
        CurrentLoc: {
            $geoWithin: {
                $centerSphere: [currentLoc, maxDistance]
            }
        }
    }


    var query = db.collection('User').find(toFind)
    query.toArray(function (err, doc, queryResult) {
      logger.debug ('result: ' + JSON.stringify(doc);
})

Возвращает пустой набор и не возвращает данные.Почему он возвращает разные вещи, а также почему он пуст?

1 Ответ

0 голосов
/ 13 декабря 2018

Возможно, вам понадобится разбить переменную currentLoc на массив из двух значений, чтобы запрос был структурирован так же, как при выполнении через Обозреватель данных CosmosDB :

[- 122.0312186,37.33233141] в $centerSphere: [[-122.0312186,37.33233141], 0.0025232135647961246]

Надеюсь, это поможет!

...