日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

nodejs 向mongodB获取指定数目的数据

發(fā)布時(shí)間:2025/3/21 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 nodejs 向mongodB获取指定数目的数据 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

nodejs 向mongodB獲取指定數(shù)目的數(shù)據(jù)

原理:通過(guò)向nodejs服務(wù)器端發(fā)送請(qǐng)求,nodejs 收到請(qǐng)求向mongodB讀取五條數(shù)據(jù),在控制臺(tái)中打印出來(lái):

nodejs段代碼(新建一個(gè)文件server.js將以下代碼復(fù)制其中):

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)


現(xiàn)在打開(kāi)瀏覽器,輸入以下地址:http://localhost:8888/? ? ? 如下圖:


回車,查看命令行答應(yīng)的日志:


可以看到前面五條數(shù)據(jù)已經(jīng)獲取了,刷新以下瀏覽器:


第六至十條數(shù)據(jù)意已經(jīng)獲取了。

注意,這個(gè)實(shí)驗(yàn)首先要?jiǎng)?chuàng)建一個(gè)有數(shù)據(jù)的數(shù)據(jù)庫(kù)


以上方法可以是一個(gè)實(shí)驗(yàn),但那樣寫(xiě)并不好,但是卻能給我們一些啟發(fā):

接下來(lái)還有一種方法,此方法采用 ?Mongoskin ?模塊(通過(guò) ? npm ?install ? mongoskin ?來(lái)獲取此模塊),代碼如下:

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)

代開(kāi)瀏覽器輸入地址:http://localhost:8888/? ?運(yùn)行結(jié)果:


刷新:


第六至十條數(shù)據(jù)出來(lái)了。


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


總結(jié)

以上是生活随笔為你收集整理的nodejs 向mongodB获取指定数目的数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。