1. 程式人生 > >Node實現簡單的註冊時後端的MVC模型架構

Node實現簡單的註冊時後端的MVC模型架構

del 引入 數據庫 reg god 定義 hash oba router

實現一個簡單的註冊界面後端MVC模型架構

第一步:在生成的express框架的app.js中添加一個路由,代碼如下:var api = require(‘./routes/api‘); app.use(‘/api‘, api);

第二步 :.在routes中新建一個api.js實例化路由,代碼如下:var express = require(‘express‘);var router = express.Router();
const userController = require("../controller/user.js");router.post("/user/register",userController.register);module.exports = router;

第三步 :在這個路由中引用業務邏輯層(在根目錄下新建一個controller文件夾,在建一個user.js作為邏輯層)。

其中代碼如下:

const UserM = require("../model/user.js");//引用M層模塊

const crypto = require(‘crypto‘);//引入密碼編譯模塊

const reginster = (req,res) = >{

const {name,password} = req.body;

UserM.findOneUser({name},(reqult)=>{

if(result.length>0){

res.json({

ret:true,

data:false

})

}else{

const hash = crypto.createHash(‘sha256‘);

hash.update(password);

UserM.saveUser({

name,

password:hash.digest(‘hex‘)

},()=>{

res.json({

ret:true,

data:true

})

})

}

})

}

module.exports = {

register

}

因為在C層中引入了M層,所以需要先將M層模板創建出來

在根目錄下建立一個model文件夾裏邊建一個user.js文件作為模型層,模型層代碼如下:

const mongoose = require("../utils/database.js");//引入數據庫鏈接

const User = mongoose.mode(‘user‘,{

name : String,

password:String

})

const saveUser = (userInfo,succCb) = >{

const user = new User(userInfo);

user.save().then(()=>{

succCb();

})

}

const findOneUser = (userInfo,succCb)=>{

User.find(userInfo).then((result)=>{

succCb(result);

})

}

module.exports = {

saveUser,

findOneUser

}

又因為在模型層使用了數據庫鏈接,所以要引用自定義的數據庫鏈接模塊

數據庫鏈接模塊就是在根目錄下建立一個utils文件夾,在此文件夾下建立database.js文件,

其中代碼如下:

var mongoose =require(‘mongoose‘);//需要先下載mongoose第三方模塊

mongoose.connect(‘mongodb://127.0.0.1:27017/job‘,{useMongoClient:true});

mongoose.Promise = global.Promise;

module.exports = mongoose;

今天有點累了,代碼暫寫這麽多,日後再完善

Node實現簡單的註冊時後端的MVC模型架構