码迷,mamicode.com
首页 > 数据库 > 详细

node + mongodb 简单实现自己的查询接口

时间:2018-02-09 15:10:16      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:转码   用户   客户   数据   代码   pos   post   down   string   

话不多说直接上代码

const http = require(‘http‘);
const Db = require(‘mongodb‘).Db;
const Connection = require(‘mongodb‘).Connection;
const Server = require(‘mongodb‘).Server;
const query2 = require(‘querystring‘);
var url=require(‘url‘);

let settings = {
	cookieSecret : ‘shop‘,
	db : ‘local‘,
	host : ‘localhost‘,
	port : 27017
}
let shopping = new Db(settings.db, new Server(settings.host,settings.port),
	{safe : true});


var server = http.createServer(function(req,res){

	var  arg=url.parse(req.url).query ;
	var nameValue=query2.parse(arg)[‘funNo‘]
	//var cc = query.parse(req);

	// var data = "";
	// res.on(‘data‘, function (chunk) {
	//   data += chunk;
	// })
	// .on("end", function () {
	//   //对data转码
	// });

  if(nameValue == ‘001‘){
    let param = {
      pdtId : 1,
    }
   getOne(param.pdtId,function(err,post){
	      var data = JSON.stringify(post);
	      res.writeHead(200, {
				‘Content-type‘ : ‘application/json‘,
				});
	    res.setHeader({
				‘Access-Control-Allow-Origin‘: ‘*‘
				});
	      res.write(data,‘UTF-8‘);// 向请求客户端发送相应内容,data是buffer或字符串,encoding为编码
	      res.end(); //结束响应,告知用户所有发送已经完成,当所有要返回的内容发送完

	    })
  }
})
function getOne(pdtId,callback){
  shopping.open(function(err,db){
    if(err){
      return callback(err);
    }
    //打开数据库之后就去找数据了
    db.collection(‘chen‘,function(err,collection){
        if(err){
          shopping.close();
          return callback(err);
        }
        //根据条件查询
        collection.findOne({
          "pdtId" : pdtId,

        },function(err,data){
          shopping.close();
          if(err){
            return callback(err);
          }
          //将查到的文档解析
          //doc.post = markdown.toHTML(doc.post);
	  var cc = [];
	  cc.push(data)
          callback(null,cc)//返回查询的文章
        })
    })
  })
}
server.listen(8081);

 如以上的代码,通过对数据库设置,连上本地数据库。然后通过querystring解析查询条件,这里的查询条件我写死了 ,pdtId = 001,然后通过对数据库的操作,将数据返回。

浏览器输出地址,可以看到数据。

node + mongodb 简单实现自己的查询接口

标签:转码   用户   客户   数据   代码   pos   post   down   string   

原文地址:https://www.cnblogs.com/jjucap/p/8434505.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!