阅读 104

koa2加mongodb快速入门

1.安装koa2并安装koa2项目生成器

npm install koa --save npm install koa-generator -g 复制代码

2.安装node_modules

npm install 复制代码

3.安装mongodb

去官网直接下载即可,并安装mongodb的可视化工具mongodb compass

4.创建文件启动服务

创建文件夹,在所在文件夹中创建log和db文件
C:\xxx\MongoDB\data\db
C:\xxx\MongoDB\log
C:\xxx\MongoDB\log\MongoDB.log
进入bin目录输入命令启动服务
cd C:\xxx\MongoDB\Server\3.4\bin
mongod -dbpath "C:\Program Files\MongoDB\data\db"
测试,打开端口27017页面上出现表示成功

image.png

4.打开可视化工具compass

image.png 点击connect按钮即可 可在里面进行创建文档

5.回到搭建完成的koa项目,安装可支持热更新的nodemon和mongoose

npm i -g nodemon npm install mongoose --save-dev 复制代码

6.创建db文件夹和index.js用来连接数据库

const mongoose = require('mongoose') module.exports = () => {     //连接数据库地址下面所创建的文档     mongoose.connect('mongodb://localhost:27017/koa', {         useNewUrlParser: true     }).then(res => {         console.log('数据库连接成功!');     }).catch(err => {         console.log('数据库连接失败!' + err);     }) } 复制代码

在app.js中引入db

const mongoose = require('./db') mongoose() 复制代码

7.通过查看package.josn文件使用有nodemon的启动命令

npm run dev 复制代码

在服务中可以查看log 数据库连接是否成功

8.创建models文件夹,用来设置表头和获取数据库处理数据方法能力

const mongoose = require('mongoose') //schema数据表模型 const userSchema = new mongoose.Schema(     //数据为表头数据列     {         username: String,         pwd: {             type: String,         },     }) // users为连接的文档名 const User = mongoose.model('users', userSchema) //将User导出 module.exports = {     User } 复制代码

9.在routes文件夹中可以创建不同模块接口地址文件

例如创建use.js

const router = require('koa-router')() //使用users来作为借口前缀 router.prefix('/users') //需要创建control文件夹来管理各个路由所需的回调函数 const { loginCtl } = require('../controllor/userControl') //创建login登录接口地址,loginCtl为所需要处理的函数 router.post('/login', loginCtl) module.exports = router 复制代码

10.创建control文件夹来管理各个路由所需的回调函数

例:创建userControl.js,

//引入创建好的User来提供数据库能力 const { User } = require('../models') const loginCtl = async (ctx) => {     let { username, pwd } = ctx.request.body     await User.findOne({ username, pwd }).then(res => {         console.log(res);         if (res) {             ctx.body = {                 code: 200,                 token: token,                 msg: '登录成功'             }         } else {             ctx.body = {                 code: 300,                 msg: '用户名或密码错误'             }         }     }).catch(err => {         ctx.body = {             code: 500,             msg: err         }     }) } module.exports = {     loginCtl } 复制代码

在app.js中引入写好的路由

const users = require('./routes/users') app.use(users.routes(), users.allowedMethods()) 复制代码

使用postman来测试接口

image.png 至此,你的第一个接口就已经写好了。

总结

Koa2 是基于 Node.js 平台的一个轻量化框架,是由 Express 原班人马打造的,本身不绑定任何中间件并支持 async 函数,Koa2 非常轻,开发起来很自由,简单易上手。
作为一个前端开发人员,有一定的后端开发能力,能够在与后端连调的时候更加的丝滑,对于数据结构也能有更深的理解,使用js来开发后端服务接口,做一个有开发全栈能力的程序猿吧!


作者:bgColor
链接:https://juejin.cn/post/7020309506357723143


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐