我是如何成功搭建 express+mongodb 的简洁博客网站后端的

项目结构图

前言

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

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

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

1. 后端

1.1 已经实现功能

登录

文章管理

标签管理

评论

留言管理

用户管理

友情链接管理

时间轴管理

身份验证

1.2 待实现功能

x点赞、留言和评论 的通知管理

x个人中心(用来设置博主的各种信息)

x工作台( 接入百度统计接口,查看网站浏览量和用户访问等数据 )

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 ( 构建安装 )

npm install

npm start

请使用 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

本博客系统的系列文章:

  • 1. react + node + express + ant + mongodb 的简洁兼时尚的博客网站
  • 2. react + Ant Design + 支持 markdown 的 blog-react 项目文档说明
  • 3. 基于 node + express + mongodb 的 blog-node 项目文档说明
  • 4. 服务器小白的我,是如何将node+mongodb项目部署在服务器上并进行性能优化的

9. 最后

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

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

本文分享自微信公众号 - 全栈修炼(BiaoChenXuYing)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-11-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏芋道源码1024

分布式消息队列 RocketMQ 源码分析 —— RPC 通信(二)

摘要: 原创出处 https://mp.weixin.qq.com/s/iJww26xFSwEytoz8NjpFRw 「胡宗棠」欢迎转载,保留摘要,谢谢!

7110
来自专栏前端自习课

【MobX】390- MobX 入门教程(上)

observable 是一种让数据的变化可以被观察的方法,底层是通过把该属性转化成 getter / setter 来实现的。。

8020
来自专栏大前端开发

《Vue3.0抢先学》系列之:使用render函数

还记得Vue2.x中组件的 render 方法么?我们除了可以用template来进行模板化的渲染输出,还可以用 render 方法进行编程式的渲染。模板有着看...

9110
来自专栏GitHubDaily

微软开源的这款可视化工具也太酷炫了吧!

说到数据可视化,大家都很熟悉了,设计师、数据分析师、数据科学家等,都需要用各种方式各种途径做着数据可视化的工作.....

10520
来自专栏进击的全栈

为 React 预览版的未来做准备

为了与 React 生态系统的合作伙伴分享即将到来的变化,我们正在建立正式的预览通道,我们希望这个过程能帮助我们对 React 的变化更有自信,并让开发者有机会...

7700
来自专栏大前端开发

《Vue3.0抢先学》系列之:响应式之Ref vs. Reactive

在上文中,我们使用Vue3.0最新的Composition API改写了由Options API写成的计数器示例。我们发现,原先的数据响应式监听的用法发生了变化...

9510
来自专栏全栈工程师成长之路

前端开发学习-UI库MDB

目前我在工作之余,会对自己进行一些能力的提升和加强,除了对自己硬实力有提升的网课,我始终还是没有放弃自学前端开发,毕竟开发一个自己的个人网站,是我一直都想做的事...

8010
来自专栏腾讯技术工程官方号的专栏

令人惊叹的前端路由原理解析和实现方式

? 在单页应用如此流行的今天,曾经令人惊叹的前端路由已经成为各大框架的基础标配,每个框架都提供了强大的路由功能,导致路由实现变的复杂。想要搞懂路由内部实现还是...

10130
来自专栏京程一灯

怎样创建你的第一个React Native App[每日前端夜话0xD8]

开发人员总会遇到几个十分常见的疑问,即应该怎样正确的设计新应用,以及如何从选定的技术堆栈入手。因此,你需要学习如何用 React Native Starter ...

9520
来自专栏sofu456

react

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

7710

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励