h.Dom

小黑屋

Bug都不会写的程序员


GitTalk评论配置

Gitalk

为什么我要写这篇博文,在我自己用Github搭建我的博客时候,每次完成一点细节的修改,总会和强迫症一样去各大论坛去找相关的帖子去看,来验证自己的博客是不是达到自己内心的期望,在配置Gitalk之前,我试着用过Gitment来作为自己的评论插件,也用过来比力,但是总觉得达不到自己内心的想法。搜集完资料,折腾了好几个下午,终于算是完成了Gitalk的配置,也暂时满足了自己。话不多说,我们进入主题。

Gitalk配置

仓库下创建OAuth Application

Application name: 应用名称,随意

Homepage URL: 网站URL,对应自己博客地址

Application description :描述,随意

Authorization callback URL:# 网站URL,博客地址就好

点击注册,页面会出现其中Client ID和Client Secret在后面的配置中需要用到,到时复制粘贴即可:

这个Client ID和Client Secret只是作为演示在这里给大家看一下,我已经删除了。

在博客网页中添加Gitalk代码

在我的博客中,我直接添加到post.html中

<!-- Link Gitalk 的支持文件  -->
<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
<script src="https://unpkg.com/gitalk@latest/dist/gitalk.min.js"></script> 
<div id="gitalk-container"></div>     <script type="text/javascript">
    var gitalk = new Gitalk({

    // gitalk的主要参数
		clientID: '复制刚才生成的clientID',
		clientSecret: '复制刚才生成的clientSecret',
		repo: '自己博客的地址',
		owner: 'GitHub的用户名',
		admin: ['Github的用户名'],
		id:window.location.pathname,
    
    });
    gitalk.render('gitalk-container');
</script> 
<!-- Gitalk end -->

在这里我们就完成了Gitalk的配置

配置过程出现的错误

在配置好Gitalk后页面会出现

Gitalk在使用时要为每篇博文都进行一次初始化,也有大佬实现了自动初始化,但是迎来了考试周,作为一个大学生,还是怀揣着对挂科的敬畏之心乖乖放下滚去复习了。如果实现了我会再发一篇自动初始化的博文来为大家分享一下自己的实现过程。

这里理论上我们点击登陆后就会自动生成一个lssues来作为自己的评论存放站,每篇博文会有属于自己的lssues,但是配置中出现了以下错误

评论初始化404 这里我在搜集了论坛后发现了各种解决方法,这里我先解释一下为什么会出现这种错误。

issue的标签label有长度限制!labels的最大长度限制是50个字符

在生成label的时候 id:window.location.pathname 可能会根据编码不同而导致实际id超出50个字符,就会报错

下面是其他人在配置的时候出现的这种错误及其他错误的讨论,如果我的这篇博文没有帮到你,下面的链接点进去说不定会帮到你

错误解决

我在试过md5加密后发现任然不能实现初始化,作为一个Java学习者,我想到用js中的方法来实现编码转换,将自己的id改为

	id: decodeURI(window.location.pathname)

这样再次登录进去生成lssues的时候没有报错,完美解决了这个问题,也算是折腾完了Gitalk。

如果觉得对你有所帮助请star表示支持,感谢阅读。