1、本地安装mongodb
安装包:https://www.mongodb.com/download-center/community
2、npm安装mongodb模块
npm install mongodb --save-dev
npm install ejs --save-dev
3、创建express-route路由模块文件
var url=require('url'); //封装方法改变res 绑定res.send() function changeRes(res){ res.send=function(data){ res.writeHead(200,{"Content-Type":"text/html;charset='utf-8'"}); res.end(data); } } //暴露的模块 var Server=function(){ var G=this; /*全局变量*/ //处理get和post请求 this._get={}; this._post={}; var app=function(req,res){ changeRes(res); //获取路由 var pathname=url.parse(req.url).pathname; if(!pathname.endsWith('/')){ pathname=pathname+'/'; } //获取请求的方式 get post var method=req.method.toLowerCase(); if(G['_'+method][pathname]){ if(method=='post'){ /*执行post请求*/ var postStr=''; req.on('data',function(chunk){ postStr+=chunk; }) req.on('end',function(err,chunk) { req.body=postStr; /*表示拿到post的值*/ G['_'+method][pathname](req,res); /*执行方法*/ }) }else{ /*执行get请求*/ G['_'+method][pathname](req,res); /*执行方法*/ } }else{ res.end('no router'); } } app.get=function(string,callback){ if(!string.endsWith('/')){ string=string+'/'; } if(!string.startsWith('/')){ string='/'+string; } // /login/ G._get[string]=callback; } app.post=function(string,callback){ if(!string.endsWith('/')){ string=string+'/'; } if(!string.startsWith('/')){ string='/'+string; } G._post[string]=callback; } return app; } module.exports=Server();
4、连接并添加数据
var http = require('http'); var app = require('./module/express-route'); var ejs = require('ejs'); /*mongodb连接设置*/ const MongoClient = require('mongodb').MongoClient; const dburl = 'mongodb://localhost:27017'; const dbName = 'test'; const client = new MongoClient(dburl); /**/ http.createServer(app).listen('8001'); /** * 添加数据 */ app.get('/add',function (req,res) { client.connect(function(err) { if(err){//连接失败 console.log("Connected fail to server"); } //连接成功 console.log("Connected successfully to server"); const db = client.db(dbName); db.collection('shop').insertOne({'name':"name-yangwenjie","age":28},function (error,result) { if(error){ console.log("insert database faile"); } console.log("insert database successfully"); client.close(); }) }); })
注意:mongodb配置代码
const MongoClient = require('mongodb').MongoClient; //引用mongodb const dburl = 'mongodb://localhost:27017'; //数据库url const dbName = 'test'; //数据库名 const client = new MongoClient(dburl); //创建一个客户端 client.connect(function(err) { if(err){ console.log("Connected fail to server"); } console.log("Connected successfully to server"); const db = client.db(dbName); //添加数据库操作代码 client.close(); });
具体可以参考mongodb关于nodejs的官方文档:http://mongodb.github.io/node-mongodb-native/3.1/quick-start/quick-start/