代码拉取完成,页面将自动刷新
express+mongoDB的一套后台管理系统后端部分,前端部分(vue后台管理系统)
const imgPrefix = 'http://localhost:6166/'
const imgUrl = imgPrefix + '/static/img/tudousi.jpg'
// 最终展示 'http://localhost:6166/static/img/tudousi.jpg'
邮箱验证、注册、登录、jwt验证、用户管理、权限列表、角色列表、商品的增删改查、国际化管理(增删改查、批量添加、excel导入导出、导出js文件)、图片上传两种方式(七牛云、文件服务器)等
利用apidoc生成接口文档 文档生成示例
数据库ORM使用Mongoose
用到的依赖
"archiver": "^5.0.0",
"cors": "^2.8.5",
"express": "^4.17.1",
"jsonwebtoken": "^8.5.1",
"mongoose": "^5.9.25",
"multer": "^1.4.2",
"nodemailer": "^6.4.10",
"qiniu": "^7.3.2",
"xlsx": "^0.16.6"
目录结构
.
├── apidoc # 命令生成的接口文档
├── db # 数据库相关
├── model # 定义表结构
└── connect.js # 连接数据库
├── output # 导出多语言JS临时存放点(用于前端下载)
├── router # 接口路由(进行数据库CRUD)
├── sql # 本项目用到的sql文件(导入到MongoDB数据库)
└── mongoDB命令.txt
├── static # 静态资源(暴露在外部可访问)
├── excel # 导出excel临时存放点(用于前端下载)
├── img # 图片资源
└── rar # 导出rar压缩文件临时存放点(用于前端下载)
├── utils # 公共JS方法或变量
├── counter.js # 为数据库表自增id
├── exportXlsx.js # 导出excel相关方法
├── mail.js # 邮箱发验证码
├── qiniu.js # 七牛云上传方法
├── rar.js # rar压缩
└── token.js # 生成、验证token
├── 多语言文件.xlxs # 用于测试多语言批量导入的模板
├── apidoc.json # apidoc的配置文件
├── package.json
└── serve.js # 项目入口文件
# 查看源
npm config get registry
# 更换源
npm config set registry https://registry.npmjs.org
# 淘宝源
npm config set registry https://registry.npm.taobao.org
npm install
启动mongoDB
将sql文件夹下json
导入mongoDB
的expressdbs
数据库
npm run dev
启动,默认6166端口
npm run doc
生成接口文档,放于apidoc文件夹(如要使用apidoc
,需全局安装npm install apidoc -g
)
部署到服务器推荐使用pm2
eg. 运行
D:\Projects\node\gitee\express_mongoDB>pm2 start serve.js --name express_mongoDB
# pm2 命令如下
npm install pm2 -g # 命令行安装 pm2
pm2 list # 显示所有进程状态
pm2 start serve.js --name my-api # 命名进程并运行(在该项目目录下创建别名my-api并运行serve.js)
pm2 stop 0 # (通过id)停止指定的进程(0是id)
pm2 stop my-api # (通过别名)停止指定的进程(my-api是别名)
pm2 restart 0 # 重启指定的进程
pm2 restart all # 重启所有进程
pm2 stop all # 停止所有进程
pm2 reload all # 0秒停机重载进程 (用于 NETWORKED 进程)
pm2 logs # 显示所有进程日志
pm2 monit # 监视所有进程
pm2 startup # 产生 init 脚本 保持进程活着
pm2 delete 0 # 杀死指定的进程
pm2 delete all # 杀死全部进程
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。