gitment 登录失败

搭建个人博客之后, 对于评论系统进行了很长时间的选择, 最终还是选择了 gitment, 首先考虑博客的受众群体, 大家都是写代码的, 当然也就有 github, 那么登录的账号就不需要新建. 另外关于评论, github 上面的对话框已经能输入足够多的东西. gitment 是一款用 github 上 issue 来作为评论的插件. 网上有大量关于 gitment 的接入教程, 在此不多说. 问题的出现情况是, 很久不写博客, 前几日刚写了一篇, 后来想起来, 博客的评论没有初始化(gitment 接入后, 每篇文章的评论需要初始化, 也就是新建 issue, 网上也有自动化实现, 我感觉不是很麻烦, 就没有去弄.), 然后我就去初始化. 发现登录的时候总是报错 [object ProgressEvent]. 没办法, 就去官网看 issue, issue 中看到的解释是, 作者的服务停掉了.

但是比较好的是, 作者也开源了这个服务的源码.

以下介绍如何替换作者的代码, 使用自己启动的服务.

  1. 首先在服务器上下载作者的代码.
1
git clone https://github.com/imsun/gh-oauth-server.git
  1. 进入项目, 下载依赖, 并启动
1
npm install && npm start

默认的端口号是 3000.(省略 nginx 配置以及域名映射等一系列猛如虎的操作)

  1. 我用的 hexo 博客系统, 找到项目上的 gitment.swig 文件, 找到如下代码位置, 我的是在文件头部
1
2
3
4
5
6
7
8
9
{% if theme.gitment.mint %}
{% set CommentsClass = "Gitmint" %}
<link rel="stylesheet" href="https://aimingoo.github.io/gitmint/style/default.css">
<script src="https://aimingoo.github.io/gitmint/dist/gitmint.browser.js"></script>
{% else %}
{% set CommentsClass = "Gitment" %}
<link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">
<script src="https://imsun.github.io/gitment/dist/gitment.browser.js"></script>
{% endif %}

实际上在我的博客上, gitment 使用的 css 和 js 是上面的 gitmint, 为了保险起见, 我全部 down 了下来.

  1. 分别打开 gitmint.browser.js 和 gitment.browser.js, 然后寻找代码字符串
1
https://gh-oauth.imsun.net

并将其替换为我们刚才启动的服务地址.

  1. 然后将四个文件上传至我自己的 oss 文件存储服务器上. 这个时候把该四个文件的地址复制替换步骤三的四个网络链接.

  2. 修改完毕, 上传代码, 服务器更新. 搞定!