mysql

var express = require('express');
var router = express.Router();
//引入数据库模块
var mysql = require("mysql");
// 引入jwt token工具
const JwtUtil = require('../public/utils/jwt');


//连接数据库
var connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',//用户名
  password: '1314',//密码
  database: 'microblog'//要连接的数据库名称
});
//执行创建连接 
connection.connect(function (err) {
  if (err) {
    console.log("user.js连接失败");
  } else {
    console.log("user.js连接成功");
  }
});


/* GET users listing. */
router.get('/', function(req, res, next) {
  res.send('respond with a resource');
});
/*登录
*/
router.post('/login', function (req, res, next) {
  //获得前端传来的数据
  var user = req.query;

  var sql = 'SELECT * FROM user';
  connection.query(sql, function (err, result) {
    if (err) {
      console.log('[SELECT ERROR] - ', err.message);
      return;
    }
    var users = result;
  });

  var userName = user.user_name;
  var pass = user.user_password;
  new Promise((resolve, reject) => {
    // 根据用户名查询用户
    users.findOne({ 'user_name': userName }).exec((err, result) => {
      if (err) {
        reject(err);
      } else {
        resolve(result);
      }
    });
  }).then((result) => {
    console.log(result);
    if (result) {
      // 密码解密 利用aes
      // var aes = new AesUtil(result.password);
      // var password = aes.deCryto();
      if (pass == result.password) {
        // 登陆成功,添加token验证
        let _id = result._id.toString();
        // 将用户id传入并生成token
        let jwt = new JwtUtil(_id);
        let token = jwt.generateToken();
        // 将 token 返回给客户端
        res.send({ status: 200, msg: "登陆成功", token: token });
      } else {
        res.send({ status: 400, msg: "账号密码错误" });
      }
    } else {
      res.send({ status: 404, msg: '账号不存在' })
    }
  }).catch((err) => {
    console.log(err);
    res.send({ status: 500, msg: '账号密码错误' });
  })


  // var sql = 'SELECT * FROM user';
  // connection.query(sql, function (err, result) {
  //   if (err) {
  //     console.log('[SELECT ERROR] - ', err.message);
  //     return;
  //   }

  //   console.log('--------------------------SELECT----------------------------');
  //   console.log('打印前端传过来的req');
  //   console.log(user);
  //   console.log(result);
  //   res.send(result);
  //   console.log('------------------------------------------------------------\n\n');
  // });

  
});

module.exports = router;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值