作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我在 redis 数据库中有 4 个集合,我想靠近所有 4 个集合的位置并作为 api 结果发回,当我只使用 1 个集合时,下面的代码工作正常,但我的要求是得到从所有 4 组中,请帮助我。
router.route('/get_near_by').post(function(req, res) {
var geo = georedis.initialize(client, {
zset: 'LocationsSet',
nativeGeo: false
});
var luxuryXL = geo.addSet('luxuryXL');
var luxurySedan = geo.addSet('luxurySedan');
var sedanFour = geo.addSet('sedanFour');
var sedanSix = geo.addSet('sedanSix');
var lat = req.body.lat;
var lng = req.body.lng;
var result = [];
var options = {
withCoordinates: true, // Will provide coordinates with locations, default false
withHashes: true, // Will provide a 52bit Geohash Integer, default false
withDistances: true, // Will provide distance from query, default false
order: 'ASC', // or 'DESC' or true (same as 'ASC'), default false
units: 'km', // or 'km', 'mi', 'ft', default 'm'
count: 10, // Number of results to return, default undefined
accurate: true // Useful if in emulated mode and accuracy is important, default false
};
luxuryXL.nearby({latitude: lat, longitude: lng}, 5000, options, function(err, luxuryXL){
if(err) {
console.error(err)
} else {
return res.send(luxuryXL);
}
});
});
以下是我试过但不起作用的代码 -
luxuryXL.nearby({latitude: lat, longitude: lng}, 5000, options, function(err, luxuryXL){
if(err) {
console.error(err)
} else {
result['a'] = res.send(luxuryXL);
}
});
最佳答案
您可以并行或顺序查询 4 个集合并发送它们。我建议使用像 async 或 bluebird 这样的 promise 来进行并行查询并将它们连接在一起并发送响应。希望这对您有所帮助,如果您还有其他问题,请告诉我
关于node.js - 如何使用 nodejs 和 georedis 发送多个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38238402/
我在 redis 数据库中有 4 个集合,我想靠近所有 4 个集合的位置并作为 api 结果发回,当我只使用 1 个集合时,下面的代码工作正常,但我的要求是得到从所有 4 组中,请帮助我。 route
我正在构建一个 GraphQL API,我需要在其中访问附近的用户位置。我使用 node-georedis 库 ( https://github.com/arjunmehta/node-georedi
我是一名优秀的程序员,十分优秀!