之前用 Express 写的博客系统 Spruche (德语:“箴言”),因为偷懒,用了多说,前两个星期看见了多说要关闭的通知,吃惊秒,为多说默哀三秒后,意识到掌握核心技术的重要性。接下来抽空给系统写了个支持第三方登陆的 jQuery 评论框插件,同时也给她升了个级。

Spruche 拥有以下简单的功能与朴实的特性:
- 文章编辑、删除、置顶、草稿、特色图片、语法高亮,使用 ueditor 编辑器
- 支持主题
- 友情链接管理
- 多说评论导入
- 支持微博登陆、回复、赞、踩、举报等功能的高颜值 Servant 评论框插件,其样式拷贝 B 站
- 系统升级提醒
- 漂亮的默认主题以及手工绘制的错误页面
展示
默认主题直接丢个链接:默认主题
还是给个截图拉长以下 V2EX 的页面:

评论框上个截图。

有没有觉得很情切很眼熟,没错,样式是拿 B 站的。是的,就是在 Chrome 里按 F12 抄的样式(听说这里特别注重版权许可,我这么明目张胆地抄会不会被人打?会不会被被封号)。
评论框为啥要叫 Servant 这么中二的名字,因为是账号是从微博那边召唤过来的,就像是召唤英灵一样,对的,我就是你们的 master 。
别看样式是抄的,评论框该有的功能还是有的:登陆、点赞、踩之类的,迅速过一下配置参数。
var defaults = {
placeholder: '请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。',
wbAppKey: '', // 新浪微博开发者引用 appKey
commentAble: true, // 是否可以发评论
announcement: '', // 评论框公告
pageNumber: 10, // 每页评论个数
childrenNumber: 10, // 子级评论每页个数
threadKey: '', // 页面唯一 key
title: '' // 页面标题
};
后面做得比较搓,主要因为没时间,有时间也要偷个懒。

环境要求
因为楼主要用 async ,还要求 MySQL 拥有支持 4 字节 emoji 编码的 utfmb4 ,所以对环境的要求还挺高的:
- Node >= V7.0
- MySQL >= 5.5.3
评论框这么复杂后续也少不了 redis , mysql 跟不上节奏。
自定义
模版引擎用的是 ejs ,相关文档和接口定义后续整理。
写在最后,求颗星星: GitHub