gitalk 评论插件

Gitalk 是一个基于 GitHub Issue 和 Preact 开发的评论插件。

Gitalk 使用的是 Github 的 OAuth 认证,请求时必须要有 clientIDclientSecret
这种方式每小时的 Rate limiting 是 60 。如果只是发表评论,足够了。

第一步:注册github OAuth application

前提是自己得有一个github账号,才能注册OAuth application,OAuth应用注册地址查看已有的OAuth应用

注册页面会需要填写如下信息:

本地调试需要将登录回调地址Authorization callback URL改为http://localhost/,不需要端口地址。

注册成功会跳转到成功页面,页面会有如下信息:

需要保存clientIDclientSecret,用于Gitalk

第二步:创建github仓库

点击此处创建,需要填写如下信息:

第三步:Gitalk 安装

Gitalk官方文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<div id="gitalk-container"></div>

<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
<script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script>
<script>
var gitalk = new Gitalk({
clientID: '2ceec9768754a29069c7', // OAuth应用clientID
clientSecret: 'c9544f9e915c128c49909b3325ace37dc7bac22f', // OAuth应用clientSecret
repo: 'blog', // 仓库名字,不能是仓库全路径,后面也不能有 .git
owner: 'coder-linx', // GitHub repository 所有者,可以是个人或者组织。
admin: ['coder-linx'], // GitHub repository 的所有者和合作者 (对这个 repository 有写权限的用户)。
id: 'example-gitalk', // 页面的唯一标识。长度必须小于50
distractionFreeMode: false // 类似Facebook的无干扰模式
});

gitalk.render('gitalk-container');
</script>

新建一个 html 页面,复制以上内容放入 <body> 标签,浏览器打开,即可看到如下内容:

Not Found 错误

如果出现错误 Error: Not Found. 如图

原因大概如下

  1. issue 仓库必须是 public ,不能是 private 。参考 github 修改私有仓库为共有仓库
  1. repo 字段不能是仓库全路径,后面也不能有 .git ,只填仓库名字即可,比如我的仓库地址 https://github.com/coder-linx/blog ,只需要填 blog !

本文demo

example-gitalk.html

扫码查看

本文由 linx(544819896@qq.com) 创作,采用 CC BY 4.0 CN协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。本文链接为: https://blog.jijian.link/2020-01-06/gitalk-comment/

如果您觉得文章不错,可以点击文章中的广告支持一下!