亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

node.js(expree.js?)模擬手機(jī)驗(yàn)證碼登錄功能

 更新時間:2024年01月17日 15:11:44   作者:鷗總  
這篇文章主要介紹了node.js(expree.js?)模擬手機(jī)驗(yàn)證碼功能及登錄功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧

dbconfig.js

const mysql = require('mysql')
module.exports = {
    // 數(shù)據(jù)庫配置
    config: {
        host: 'localhost', // 連接地址
        port: '3306', //端口號
        user: 'root',  //用戶名
        password: 'wei630229', //密碼
        database: 'exapp2', //數(shù)據(jù)庫名
    },
// 連接數(shù)據(jù)庫,使用mysql的連接池連接方式
// 連接池對象
sqlConnect: function (sql, sqlArr, callBack) {
        var pool = mysql.createPool(this.config)
        pool.getConnection((err, conn) => {
            console.log('12345')
            if (err) {
                console.log('連接失敗');
                return;
            }
            // 事件驅(qū)動回調(diào)
            conn.query(sql, sqlArr, callBack);
            //釋放連接
            conn.release();
        })
    }
}
var dbCongif = require("../utils/dbconfig");
// 隨機(jī)驗(yàn)證碼
function rand(min, max) {
  return Math.floor(Math.random() * (max - min)) + min;
}
// 聲明驗(yàn)證碼和手機(jī)號數(shù)組
ValidatePhoneCode = [];
// 判斷該手機(jī)是否一定接收過該驗(yàn)證碼
let sendCodeP = (phone) => {
  for (var item of ValidatePhoneCode) {
    console.log("item", item);
    if (phone == item.phone) {
      return true;
    }
  }
  return false;
};
//
let findCodeAndPhone = (phone, code) => {
  for (var item of ValidatePhoneCode) {
    if (phone == item.phone && code == item.code) {
      return "login";
    }
  }
  return "error";
};
// 驗(yàn)證碼發(fā)送接口
sendCode = (req, res) => {
  // 判斷該手機(jī)號是否一定接收過驗(yàn)證碼
  let phone = req.query.phone;
  if (sendCodeP(phone)) {
    res.send({
      code: 400,
      msg: "已經(jīng)發(fā)送過驗(yàn)證碼,稍后再發(fā)",
    });
  }
  let codeMge = rand(1000, 9999);
  ValidatePhoneCode.push({
    phone: phone,
    code: codeMge,
  });
  res.send({
    code: 200,
    msg: "發(fā)送成功",
  });
  console.log("code", codeMge);
};
// 驗(yàn)證碼登錄
codePhoneLogin = (req, res) => {
  let { phone, code } = req.query;
  // 判斷手機(jī)號是否發(fā)送過驗(yàn)證碼
  if (sendCodeP(phone)) {
    // 驗(yàn)證碼和手機(jī)號是否匹配
    let state = findCodeAndPhone(phone, code);
    if (state == "login") {
      // 登錄成功
      res.send({
        code: "200",
        mgs: "登錄成功",
      });
    } else if (state == "error") {
      res.send({
        code: "500",
        mgs: "登錄失敗",
      });
    }
  } else {
    res.send({
      code: "400",
      mgs: "未發(fā)送驗(yàn)證碼",
    });
  }
};
module.exports = {
  sendCode, // 驗(yàn)證碼接口
  codePhoneLogin, //  登錄接口
};

測試驗(yàn)證碼發(fā)送

測試登錄

到此這篇關(guān)于node.js(expree.js )模擬手機(jī)驗(yàn)證碼登錄功能的文章就介紹到這了,更多相關(guān)node.js驗(yàn)證碼登錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論