现在前端全栈里面有一种技术栈比较火

前端使用 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 demo koa mongdb

koa2 mongdb 做后端接口的小demo的更多相关文章

  1. 实战:一、使用mongo做一个注册的小demo

    思路:1.使用mongoose 进行 数据库的链接 2.使用Schema来进行传输字段的定义 3.安装koa-router进行数据处理4.安装koa-bodyparser 进行post数据交互5.解决 ...

  2. 把 nodejs koa2 制作的后台接口 部署到 腾讯云服务器

    我 使用 nodejs koa2框架 制作后端接口, 现在将nodejs koa2 部署到服务器 koa2项目 实现 接口 可以看我的 这篇文章: 简单实现 nodejs koa2 mysql 增删改 ...

  3. 记录一次用宝塔部署微信小程序Node.js后端接口代码的详细过程

    一直忙着写毕设,上一次写博客还是元旦,大半年过去了.... 后面会不断分享各种新项目的源码与技术.欢迎关注一起学习哈! 记录一次部署微信小程序Node.js后端接口代码的详细过程,使用宝塔来部署. 我 ...

  4. [Unity3D]做个小Demo学习Input.touches

    [Unity3D]做个小Demo学习Input.touches 学不如做,下面用一个简单的Demo展示的Input.touches各项字段,有图有真相. 本项目已发布到Github,地址在(https ...

  5. jsoup爬虫简书首页数据做个小Demo

    代码地址如下:http://www.demodashi.com/demo/11643.html 昨天LZ去面试,遇到一个大牛,被血虐一番,发现自己基础还是很薄弱,对java一些原理掌握的还是不够稳固, ...

  6. uni-app开发的应用(小程序,app,web等),使用Node+Koa2开发的后端程序接收上传文件的方法

    uni-app使用使用Node+Koa2开发的后端程序接收上传的文件 通过gitbook浏览此随笔 通过其它客户端上传(h5,小程序等),接收方法一致 使用koa接收时,我们需安装一个中间件koa-b ...

  7. dubbo泛化调用 小demo

    前两天刚好有个同事来问是否用过 dubbo泛化 调用,不需要通过指定配置.第一次听到的时候,还是有点懵,但觉得有意思,可以学点东西. 立马百度了,找了demo,这篇比较容易上手(http://www. ...

  8. Nancy之基于Nancy.Owin的小Demo

    前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...

  9. Win10 FaceAPI小demo开发问题汇总

    Win10 FaceAPI小demo开发问题汇总 最近使用微软牛津计划做一个小demo,使用FaceAPI做一个小应用,实现刷脸的功能.开发的过程中用到几个问题,具体如下: Stream 与IRand ...

随机推荐

  1. Internet Of Things

  2. Windows平台字符串完全指南

    The Complete Guide to C++ Strings : The Complete Guide to C++ Strings, Part I - Win32 Character Enco ...

  3. PrintDocument打印、预览、打印机设置和打印属性的方法(较完整) .

    private void Form1_Load(object sender, System.EventArgs e) { //获取或设置一个值,该值指示是否发送到文件或端口 printDocument ...

  4. Java反射创建带构造参数的类 并执行方法

    部分代码 public void go(ServletRequest request,ServletResponse response){ String methodName = "inde ...

  5. April 1 2017 Week 13 Saturday

    There is more to life than increasing its speed. 生活不仅仅是匆匆赶路. Get a life, a real life, not a manic pu ...

  6. 如何在SAP CRM里创建和消费Web service

    Created by Wang, Jerry, last modified on Dec 19, 2014 The following steps demonstrates how to expose ...

  7. C语言 字符串的声明与使用

    // 字符串的定义和初始化 void test() { // "mj" char s[] = {'m', 'j', '\0'}; // 字符串"mj" ] = ...

  8. vue.js--基础事件定义,获取数据,执行方法传值

    <template> <div id="app"> <h1>{{ msg }}</h1> <br> <button ...

  9. android 中组件继承关系图,一目了然

    View继承关系图 Adapter适配器继承关系图 Activity继承关系图

  10. 树的直径的求法即相关证明【树形DP || DFS】

    学习大佬:树的直径求法及证明 树的直径 定义: 一棵树的直径就是这棵树上存在的最长路径. 给定一棵树,树中每条边都有一个权值,树中两点之间的距离定义为连接两点的路径边权之和.树中最远的两个节点之间的距 ...