lsabella / blog-node

基于 node + express + mongodb 的博客网站后台

Home Page:http://biaochenxuying.cn/main.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

项目结构图

前言

blog-node 是采用了主流的前后端分离**的,主里只讲 后端。

效果请看 http://biaochenxuying.cn/main.html

项目详情请看这篇文章: 基于 node + express + mongodb 的 blog-node 项目文档说明

1. 后端

1.1 已经实现功能

  • 登录
  • 文章管理
  • 标签管理
  • 评论
  • 留言管理
  • 用户管理
  • 友情链接管理
  • 时间轴管理
  • 身份验证

1.2 待实现功能

  • 点赞、留言和评论 的通知管理
  • 个人中心(用来设置博主的各种信息)
  • 工作台( 接入百度统计接口,查看网站浏览量和用户访问等数据 )

2. 技术

  • 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"

3. 注意点

  • 文章是分类型的:文章类型 => 1: 普通文章,2: 简历,3: 管理员介绍;而且简历和管理员介绍的文章只能是各自一篇(因为前台展示那里有个导航 关于我 ,就是请求管理员介绍这篇文章的,简历也是打算这样子用的),普通文章可以是无数篇。
  • 点赞的用户 like_users 那里应该只保存用户 id 的,这个后面修改一下。
  • 评论功能是实现了简单的三级评论的,第三者的评论(就是别人对一级评论进行再评论)放在 other_comments 里面。
  • 评论是有状态的:状态 => 0 待审核 / 1 通过正常 / -1 已删除 / -2 垃圾评论。
  • 管理一级和三级评论是设置前台能不能展示的,默认是展示,如果管理员看了,是条垃圾评论就 设置为 -1 或者 -2 ,进行隐藏,前台就不会展现了。

7. Build Setup ( 构建安装 )

# install dependencies
npm install 

# serve with hot reload at localhost: 3000
npm start 

# build for production with minification
请使用 pm2 ,可以永久运行在服务器上,且不会一报错 node 程序就挂了。

8. 项目地址

项目地址:

前台展示: https://github.com/biaochenxuying/blog-react

管理后台:https://github.com/biaochenxuying/blog-react-admin

后端:https://github.com/biaochenxuying/blog-node

blog:https://github.com/biaochenxuying/blog

本博客系统的系列文章:

9. 参考

小汪也是第一次搭建 node 后端项目,也参考了其他项目。

参考项目: 1. nodepress 2. React-Express-Blog-Demo

10. 项目常见问题

10.1 管理员账号创建

管理后台的登录账号并不是 admin/user ,也不是搭建 mongodb 数据库时创建的 user 用户,这里的账号和密码要自己创建,至于怎样创建呢?

用 postman 调接口注册

如果是本地的可以像这样子创建,如果是服务器上的,请把 url 修改一下,

注册

    1. url
http://127.0.0.1:3000/register
    1. param
{
 "name": "BiaoChenXuYing",
 "password": "888888",
 "email": "admin@qq.com",
 "phone": 1380013800,
 "type": 0,
 "introduce":"加班到天明,学习到昏厥!!! 微信公众号:【 BiaoChenXuYing 】,分享 WEB 全栈开发等相关的技术文章,热点资源,全栈程序员的成长之路。"
}

这里的 type 为 0 是管理员账号,为 1 时,是普通用户。

10.2 端口

本地开发时,blog-react 和 blog-node 默认启动的端口是相同的,都是 3000。 所以要先启动 blog-node 项目,再启动 blog-react 项目,而且 blog-react 的端口用另外一个打开。

11. 最后

鉴于问问题的人有点多,小汪时间有限,处理不过来,大家可以加入 QQ 群:186045338 ,一起相互交流学习。

全栈开发 有兴趣的朋友可以扫下方二维码关注我的公众号,我会不定期更新有价值的内容。

关注公众号并回复 福利 便免费送你视频资源,绝对干货。

福利详情请点击: 免费资源分享--Python、Java、Linux、Go、node、vue、react、javaScript

BiaoChenXuYing

About

基于 node + express + mongodb 的博客网站后台

http://biaochenxuying.cn/main.html


Languages

Language:JavaScript 60.4%Language:HTML 39.6%