現在前端全棧裡面有一種技術棧比較火 前端使用 vue 或者react 後端使用 koa2 mysql資料庫 或者mongdb做數據儲存 但是基本這樣的全棧教程 都要收費 收費就收費吧 但是 有沒有遇到非常好的教程 於是 準備硬著頭皮看別人項目的源碼 自己摸索 一步一步完成 koa + mongdb的 ...
現在前端全棧裡面有一種技術棧比較火
前端使用 vue 或者react 後端使用 koa2 mysql資料庫 或者mongdb做數據儲存
但是基本這樣的全棧教程 都要收費 收費就收費吧 但是 有沒有遇到非常好的教程
於是 準備硬著頭皮看別人項目的源碼 自己摸索 一步一步完成 koa + mongdb的後端學習
下麵就寫一個很簡單的koa + mongdb 的資料庫寫入
user.js //這個頁面寫資料庫連接
var mongoose = require('mongoose')
var Schema = mongoose.Schema;
mongoose.connect('mongodb://localhost/m_data') //m_data是我的資料庫名字 需要自己創建
mongoose.connection.once('open',()=> {
console.log("[mongoose]mongdb is start"); //監聽啟動
})
var userSchema = new Schema({ //建表
username: {
type: String
},
password: {
type: String
},
call: {
type: Number
},
email: {
type: String
}
})
var user = mongoose.model('User',userSchema); //返回另一個Model實例
module.exports = user //導出
data.js
let koa = require('koa')
var mongoose = require('mongoose')
let User = require('./user') //導入上一個頁面的資料庫模塊
var bodyParser = require('koa-bodyparser'); //用於接受post請求的中間件
let app = new koa();
app.use(bodyParser());
app.use(async (ctx) => {
if (ctx.url === '/' && ctx.method == 'GET') {
//顯示表單頁面
let html = `
<h1>this is POST</h1>
<form action="http://localhost/" method="POST">
<p>姓名: <input type="text" name="name"></p>
<p>年齡: <input type="text" name="age"></p>
<p>電話: <input type="text" name="call"></p>
<p>郵箱: <input type="text" name="email"></p>
<input type="submit" value="提交">
</form>
`
ctx.body = html
} else if (ctx.url === '/' && ctx.method == 'POST') {
let postData = ctx.request.body;
ctx.body = postData;
console.log(postData);
User.create({
username: postData.name,
password: postData.age,
call: postData.call,
email: postData.email
},(err) => {
if(err) return
console.log('插入成功');
})
} else {
ctx.body = '<h1>404</h1>'
let data = '';
}
})
app.listen(80,()=>{
console.log('[koa] is start');
})
對於有node基礎的人來說 這應該不難 稍微都能看懂 ,就是很簡單的資料庫寫入
假如你剛剛學習koa mongdb node也不太熟練
可以看我的github上面
https://github.com/boold/Small-code/tree/master/Small%20demo%20koa%20mongdb