连接数据库及处理登陆注册请求

var express= require('express');
var fs = require('fs');
var MongoClient = require('mongodb').MongoClient;
var app = express();

// 静态路由:注册和登录页面
app.use('/',express.static('./static'));

// /static/
// /static/reg
// 处理'/',提供登录页面
app.get('/',function(req,res){
    res.redirect('/log');
})

// 处理注册请求
app.get('/login',function(req,res){
    var data = req.query;
    var name = data.name;
    var psw = data.psw;
    var url = "mongodb://localhost:27017";
//指定数据库mongodb的地址,可以指定具体连接哪一个数据库,也可以指定不存在。 use
MongoClient.connect(url,function(err,client){   //client:代表的数据库程序,不代表一个具体的数据库
    if(err){
        console.log('连接数据库失败')
        res.end('false');
    }else{
        console.log('数据库连接成功');
        // 插入数据
        // 获得一个数据库对象
        var db= client.db('work');  //获得test数据库对象
        // 数据库对象,调用collection(集合名).insertOne({})
                                         // insetMany([{},{},{}]

            db.collection('a').find({name:name}).toArray(function(err,result){ //result:找到的数据  数组:对象
            if(result.length==0){
                res.redirect('/reg')
            }else{
                var datapsw = result[0].psw;
                if(psw==datapsw){
                    client.close();
                    res.send('发送成功');
                }else{
                    client.close();
                    res.redirect('/log')
                }
            }
        })
        
    }
})
})


app.get('/register',function(req,res){
  var psw = req.query.psw;
  var name = req.query.name;
  if(name==""||psw==""){
      res.redirect('/reg');
      return;
  }      

var url = "mongodb://localhost:27017";
//指定数据库mongodb的地址,可以指定具体连接哪一个数据库,也可以指定不存在。 use
MongoClient.connect(url,function(err,client){   //client:代表的数据库程序,不代表一个具体的数据库
    if(err){
        console.log('连接数据库失败')
        res.end('false');
    }else{
        console.log('数据库连接成功');
        // 插入数据
        // 获得一个数据库对象
        var db= client.db('work');  //获得test数据库对象
        // 数据库对象,调用collection(集合名).insertOne({})
                                         // insetMany([{},{},{}]

        db.collection('a').find({name:name}).toArray(function(err,result){ //result:找到的数据  数组:对象
            if(result.length==0){

                db.collection('a').insertOne(req.query,function(err,result){})
                client.close();
                res.redirect('/log')
            }else{
                client.close();
                res.redirect('/log')
            }
        })
        
    }
})

})


app.listen(8888,function(){
    console.log('running');
})  

猜你喜欢

转载自blog.csdn.net/qq_43198747/article/details/86590550