MongoDB地理空间查询返回null数组

我正在testing针对我的开发和生产环境的地理空间查询。 生产服务器是数字海洋VPS服务器。 查询在开发机器中工作正常,但是在生产中它返回一个空数组。 但是,当我直接从生产服务器的MONGO shell执行查询时,它确实返回结果。 以下是查询function

exports.nearby=function(req,res){ var lat= +req.params.lat, long= +req.params.long, distance = +req.params.radius, cat = req.query.cat || 'auditorium'; Item.find({ "loc": { $near: { $geometry: { type: "Point", coordinates: [long,lat] }, $maxDistance: distance } }, category: cat }, function(err,data){ err ? res.json(err) : res.json(data); }); } 

开发环境

本地机器:Ubuntu 14.04,节点:v0.10.29,MongoDB:2.6.4

制作:ubuntu 14.04,节点:v0.10.30,MongoDB:2.6.5

任何帮助非常感谢…谢谢

你是否在生产数据库中创build了index2d? 它是相同的数据库?

这对我来说很好:

 var options = { $and:[{location : { $near : [longitude, latitude], $maxDistance : distance/111.12}}]}; User.find(options, '_id location').exec(function (err, users) {