前言
blog-node 是采用了主流的前后端分离思想的,主里只讲 后端。
效果请看 https://biaochenxuying.cn
项目详情请看这篇文章:基于 node + express + mongodb 的 blog-node 项目文档说明
已经实现功能
- 登录
- 文章管理
- 标签管理
- 评论
- 留言管理
- 用户管理
- 友情链接管理
- 时间轴管理
- 身份验证
- 项目展示
- 第三方 github 授权登录
- 文章归档
待实现功能
- 个人中心(用来设置博主的各种信息)
- 工作台( 接入百度统计接口,查看网站浏览量和用户访问等数据 )
技术
- node
- cookie-parser : "~1.4.3"
- crypto : "^1.0.1"
- express: "~4.16.0"
- express-session : "^1.15.6",
- http-errors : "~1.6.2",
- mongodb : "^3.1.8",
- mongoose : "^5.3.7",
- mongoose-auto-increment : "^5.0.1",
- yargs : "^12.0.2"
注意点
- 文章是分类型的:文章类型 => 1: 普通文章,2: 简历,3: 管理员介绍;而且简历和管理员介绍的文章只能是各自一篇(因为前台展示那里有个导航 关于我 ,就是请求管理员介绍这篇文章的,简历也是打算这样子用的),普通文章可以是无数篇。
- 点赞的用户 like_users 那里应该只保存用户 id 的,这个后面修改一下。
- 评论功能是实现了简单的三级评论的,第三者的评论(就是别人对一级评论进行再评论)放在 other_comments 里面。
- 评论是有状态的:状态 => 0 待审核 / 1 通过正常 / -1 已删除 / -2 垃圾评论。
- 管理一级和三级评论是设置前台能不能展示的,默认是展示,如果管理员看了,是条垃圾评论就 设置为 -1 或者 -2 ,进行隐藏,前台就不会展现了。
Build Setup ( 构建安装 )
# install dependencies
npm install
# serve with hot reload at localhost: 3000
npm start
# build for production with minification
请使用 pm2 ,可以永久运行在服务器上,且不会一报错 node 程序就挂了。
项目常见问题
管理后台登录
管理后台登录是用 邮箱加密码 进行登录
管理员账号创建
管理后台的登录账号并不是 admin/user ,也不是搭建 mongodb 数据库时创建的 user 用户,这里的账号和密码要自己创建,至于怎样创建呢?
用 postman 调接口注册
如果是本地的可以像这样子创建,如果是服务器上的,请把 url 修改一下,
-
- url
http://127.0.0.1:3000/register
-
- param
{
"name": "BiaoChenXuYing",
"password": "888888",
"email": "[email protected]",
"phone": 1380013800,
"type": 0,
"introduce":"加班到天明,学习到昏厥!!! 微信公众号:【 BiaoChenXuYing 】,分享 WEB 全栈开发等相关的技术文章,热点资源,全栈程序员的成长之路。"
}
这里的 type 为 0 是管理员账号,为 1 时,是普通用户。
项目地址与文档教程
项目地址:
本博客系统的系列文章:
服务器
笔者觉得每个开发者都应该拥有自己的网站和服务器,这可是很酷的事情,学习 Linux、跑跑脚本、建站、搭博客啥的都行啊。
因为笔者就有自己的服务器,而且有两台了,用于平时的学习,还搭建了自己的网站。
有不少读者问过我,为什么我学的那么快的呢 ? 怎么在一年内学了那么知识的...
其实也没什么秘决,就是平时有自己的服务器了,就爱折腾,学到的知识能很快得到验证,所以学起来兴致高一点。
特别是大三和大四的学生,买了服务器,搭建个项目给面试官看也香,对找工作和面试都加分,还可以熟悉技术栈。
想学得快,就得有自己的服务器来折腾才行(低于 1 折、89/年、229/3年,比学生机还便宜)
比如笔者的两个网站:
最后
如果您觉得本项目和文章不错或者对你有所帮助,请给个星吧,你的肯定就是我继续创作的最大动力。