我的服务器的路由为“q=word/s=0/t=5”,其中 q 是查询字符串,s 是起始文档,t 是限制。
因此,对于第一个请求,我将根据 q 查询文档,并显示检索到的 0 到 5 的结果。
对于下一个请求,比如 q=word/s=6/t=5,我必须显示从文档编号 6 到 10 的文档。依此类推。
有什么办法可以在 mongo 中实现。我正在使用带有 mongojs 的 nodejs。任何帮助表示赞赏。
var words = req.params.q.split(" ");
var patterns = [];
// Create case insensitve patterns for each word
words.forEach(function(item){
patterns.push(caseInsensitive(item));
});
db.collection('mycollection', function(err, collection) {
collection.find({index : {$all: patterns }}).skip((s-1)*t).limit(t).toArray(function(err, items) {
if( err || !items) {
res.header("Access-Control-Allow-Origin", "*");
console.log('nothing');
res.send([]);
} else {
res.header("Access-Control-Allow-Origin", "*");
console.log(items);
res.send(items);
}
});