В моем приложении nodejs я запрашиваю mongodb для вывода пользователей на расстоянии 100 км от заданного адреса.
Ниже приведен тип документа:
{
"_id" : ObjectId("5b26192e01e60e1e67e37b50"),
"loc":[2.4066412, 48.8599825]
....
}
И запрос nodejs:
const distance = "100000";
User.aggregate([{
$geoNear: {
near: {type: "Point", coordinates: [ latitude, longitude ]},
distanceField: "loc",
minDistance:0,
maxDistance:distance,
spherical: true
}
}], function(err, resp){
console.log(resp)
})
Этот код работает хорошо, я могу выводить пользователей на указанное расстояние, но местоположение объекта ответа изменилось:
{
"_id" : ObjectId("5b26192e01e60e1e67e37b50"),
"loc": "5419.825102233618" // <=== WHY IT DOESN'T RETURN RIGHT DATA ?
....
}
Кто-то может объяснить мне, почему это изменение по сравнению с ответными данными? ожидаемый результат не:
{
"_id" : ObjectId("5b26192e01e60e1e67e37b50"),
"loc": "5419.825102233618"
....
}
но:
{
"_id" : ObjectId("5b26192e01e60e1e67e37b50"),
"loc":[2.4066412, 48.8599825]
....
}
Спасибо.