前置,搭建项目并集成log4j实现日志系统
详细的介绍了koa2的环境搭建以及log4j的日志系统
第一步,安装插件
1. 安装koa-jwt插件
npm install koa-jwt 复制代码
用法示例:
网络异常,图片无法展示
|
我们仅需要用到这个用法就可以了, key是前端的headers.authentication的token前置 secret是解密需要的密钥,login的时候,获取的token的时候,跟解密的时候,这个secret是需要一致的,不然无法解密成功
2. 安装jsonwebtoken插件
npm install jsonwebtoken 复制代码
网络异常,图片无法展示
|
var jwt = require('jsonwebtoken'); var token = jwt.sign({ foo: 'bar' }, 'xiaohe', { expiresIn: '2d' }) 复制代码
foo: 'bar' 是需要加密的键值对
'xiaohe'是密钥
expiresIn 是token的有效时间,这里设置的是两天
3. 安装mongoose数据库
npm install mongoose 复制代码
实现
1. 先连接数据库
创建一个config文件夹,里面创建
db.js
和index.js
db.js用于连接数据库,并打印对应的连接成功或失败
/** * 数据库连接 * @auther 何小生 */ const mongoose = require('mongoose') // 引入mongoose const config = require('./index') // 引入config配置信息 const log4js = require('../utils/log4') // 引入log4j的日志系统 // mongoose连接数据库 mongoose.connect(config.URL, { useNewUrlParser: true, useUnifiedTopology: true }) const db = mongoose.connection // 打印数据库连接成功 db.on('error', () => { log4js.error('*** 数据库连接失败 ***') }) // 打印数据库连接失败 db.on('open', () => { log4js.info('*** 数据库连接成功 ***') }) 复制代码
config.js 用于配置数据库信息的基础文件
/** * 配置文件 */ module.exports = { URL: 'mongodb://127.0.0.1:27017/xiaohe' } 复制代码
网络异常,图片无法展示
|
本地安装robo3T,用于做数据库可视化工具,数据库用的是mongooseDB
网络异常,图片无法展示
|
连接数据库,并创建对应的xiaohe数据库
网络异常,图片无法展示
|
在demo里面创建xiaohe数据库
网络异常,图片无法展示
|
在xiaohe数据库的collections里面,创建user表
网络异常,图片无法展示
|
点击insert document,往user表里填充数据
网络异常,图片无法展示
|
{ "_id" : ObjectId("6118cc7ee27588cca19a8b70"), "state" : 1, "role" : "0", "roleList" : [ "60180b07b1eaed6c45fbebdb", "60150cb764de99631b2c3cd3", "60180b59b1eaed6c45fbebdc" ], "deptId" : [ "60167059c9027b7d2c520a61", "60167345c6a4417f2d27506f" ], "userId" : 1000002, "username" : "admin", "password" : "admin", "userEmail" : "admin@imooc.com", "createTime" : "2021-01-17T13:32:06.381Z", "lastLoginTime" : "2021-01-17T13:32:06.381Z", "__v" : 0, "job" : "前端架构师", "mobile" : "17611020000" } 复制代码
网络异常,图片无法展示
|
至此,连接数据库和一些准备工作已经基本完成,可以准备做下一步的操作了