nodejs 向mongodB获取指定数目的数据
nodejs 向mongodB獲取指定數目的數據
原理:通過向nodejs服務器端發送請求,nodejs 收到請求向mongodB讀取五條數據,在控制臺中打印出來:
nodejs段代碼(新建一個文件server.js將以下代碼復制其中):
var http = require("http");
var url = require("url");
var MongoClient = require('mongodb').MongoClient;
var i = 0;
var k = 5;
var flag=0;
http.createServer(function(request, response) {
? ?if(flag == 0){
? MongoClient.connect("mongodb://localhost:27017/test", function(err, db){
? if(err) { return console.dir(err); }
? var collection = db.collection('test');
for(i;i<k;i++){
? ? collection.findOne(null, { skip: i }, function(err, item){
? ? console.log(item);
? ? });
}
k += 5;
});
? ? ? ? response.writeHead(200, {"Content-Type": "text/plain"});
? ? ? ? response.write("Hello World" + i);
? ? ? ? response.end();
flag =1
console.log('---------------------------');
? ?}else if(flag == 1){
flag = 0;
response.writeHead(200, {"Content-Type": "text/plain"});
? response.write("Hello World" + i);
? response.end();
? ?}
}).listen(8888)
現在打開瀏覽器,輸入以下地址:http://localhost:8888/? ? ? 如下圖:
回車,查看命令行答應的日志:
可以看到前面五條數據已經獲取了,刷新以下瀏覽器:
第六至十條數據意已經獲取了。
注意,這個實驗首先要創建一個有數據的數據庫
以上方法可以是一個實驗,但那樣寫并不好,但是卻能給我們一些啟發:
接下來還有一種方法,此方法采用 ?Mongoskin ?模塊(通過 ? npm ?install ? mongoskin ?來獲取此模塊),代碼如下:
var http = require("http");
var url = require("url");
var mongo = require("mongoskin");
var flag = 0;
var i=0;
http.createServer(function(request, response) {
if(flag == 0){
mongo.db('localhost:27017/test').collection('test').find({},{limit: 5,skip :i*5}).toArray(function (err, items) {
? ? ? console.dir(items);
})
? ? ? ? ? ?
response.writeHead(200, {"Content-Type": "text/plain"});
? response.write("Hello World");
? response.end();
flag = 1;
}else if(flag == 1){
response.writeHead(200, {"Content-Type": "text/plain"});
? response.write("Hello World");
? response.end();
flag = 0;
i++;
}
}).listen(8888)
代開瀏覽器輸入地址:http://localhost:8888/? ?運行結果:
刷新:
第六至十條數據出來了。
mongoskin參考地址:
https://github.com/kissjs/node-mongoskin#quickstart-1
https://github.com/christkv/node-mongodb-native/blob/master/docs/queries.md
http://stackoverflow.com/questions/10929443/nodejs-mongodb-getting-data-from-collection-with-findone
總結
以上是生活随笔為你收集整理的nodejs 向mongodB获取指定数目的数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 通过nodejs插入删除MongoDB数
- 下一篇: couldn't connect to