本文檔針對於像我同樣的初學者,本身寫了個簡單的基礎demo學習。原來我是一名本分老實的Android Developer,被朋友帶入放蕩不羈的Node坑,一入坑再也爬不上來。入門簡單強烈推薦會js的朋友入坑(我一個作Android的都入坑,因此,別慌),以前爲本身的開源App寫的一個小後臺(寫法極其low,雖然如今也不怎麼樣),如今稍有改進,之後會繼續用簡潔優美的寫法優化。(優美?不存在的)html
項目使用Express框架和Mongodb數據庫node
git clone https://github.com/LiangLuDev/base-node-servergit
npm installgithub
安裝啓動這類教程網上不少,自行查閱mongodb
npm start數據庫
locahost:3390 訪問成功就完畢了。express
const mongoose = require('mongoose');
const dbUrl = 'mongodb://localhost:27017/base-node-server'
exports.connect = () => {
mongoose.connect(dbUrl, (err) => {
if(err){
console.log('數據庫鏈接失敗');
}else{
console.log('數據庫鏈接成功');
}
})
}
複製代碼
mongoose功能遠遠不止這些, 詳細請查看相關api, 中文版貌似機器翻譯,不怎麼完善,酌情使用,儘可能閱讀官方api。npm
/**
* 主路由
*/
const user = require('./user')
const order = require('./order')
const address = require('./address')
const headers = require('./headers')
module.exports = app => {
//全部的數據請求都須要驗證
app.use(headers.apptype)
//全部的數據請求都須要驗證token
app.use(headers.token)
//功能模塊子路由
app.use('/api/user', user)
app.use('/api/order',order)
app.use('/api/address',address)
}
複製代碼
/**
* 用戶子路由
*/
const express = require('express');
const User = require('../../controller/user/user');
const router = express.Router();
router.post('/register',User.register)
router.post('/login',User.login)
module.exports = router
複製代碼
//註冊用戶
async register(req, res, next) {
let username = req.body.username;
let userpassword = req.body.userpassword;
try {
const userinfo = {
user_name: username,
user_password: userpassword,
create_time: dtime().format('YYYY-MM-DD HH:mm')
}
await UserModel.create(userinfo)
res.json({
code: Constant.RESULT.SUCCESS.code,
msg: Constant.RESULT.SUCCESS.msg,
data: '註冊成功',
})
} catch (err) {
res.json({
code: Constant.RESULT.FAILD.code,
msg: Constant.RESULT.FAILD.msg,
data: '註冊失敗',
})
}
}
複製代碼
/**
* @type 數據庫model
*/
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const userSchema = new Schema({
user_id: Number,
user_name: String,
user_password: String,
user_age: String,
user_level: String,
create_time:String
})
//創建索引 提升查詢效率
userSchema.index({user_id: 1})
const userinfo = mongoose.model('userinfo', userSchema);
module.exports = userinfo
複製代碼
若是遇到問題或者好的建議,請反饋到:issue、927195249@qq.com 或者LiangLuDev@gmail.comjson
若是以爲對你有用的話,贊一下吧!api