前言
之前一直使用 Gitment 作为我自己博客的评论系统,然而 Gitment 还是有一些不足
- 一定要求登录 Github 才可评论
- [object ProgressEvent] 错误, 似乎是作者提供的 CORS header 服务没有继续维护了,所以导致无法登录 Github
- 泄漏 secret 的风险,参照 手记 4:谈谈 Gitment 中泄露 secret 的前因后果与解决方法
不过 Gitment 确实是一个非常好用的评论系统,使用 Github issue 也是非常方便的选择,然而因为自己的一些需求决定重新写一个小小的评论系统。
Ponza
Ponza 是一个非常小型的评论系统,使用 Go 编写,因此你只需要运行一个二进制文件,就能搭建一个评论服务器,开放评论接口,给你所有的网页使用。Ponza 也不需要依赖数据库,所有的评论数据使用 JSON 的格式存储在本地。另外浏览者无需登录就可以评论,具体的集成步骤如下
- 下载或者编译出 Ponza 的二进制文件
- 为一个域名生成一个 key (由此来允许这个网站域请求 Ponza 服务器的 API 接口,如果有多个网站要使用的话就生成多个 key )
- 运行 Ponza 开启评论服务器
- 在需要评论的页面前端当中引入一个 JS 文件和一个 CSS 文件
- 选择页面里评论所在的 dom,配置 Ponza 服务器地址和 key
不足
当然 Ponza 不过是我花了小段时间写的,所以肯定是存在许多不足的,例如可能存在一些安全问题(应该增加对每个 IP 短时间内请求次数的限制),以及有一些功能上面的缺失(例如点赞、评论他人等),所以还是类似于玩具性质的存在,希望听听大家的建议进行改进
地址
项目的地址在 : https://github.com/Ericwyn/Ponza
