0%

hexo + gitalk,满满的都是坑。

今日看到博客的评论功能,就想整一个,本以为跟前两天添加hexo插件查不多,结果,,爬坑,又掉坑,爬坑又掉坑……


安装gitalk

安装gitalk没什么,有很多博文有介绍,这里贴一篇就好,修改主题配置的部分很精简,我喜欢。

注意域名是自己的 github pages 或者自定义域名就好。

注意每一次发布新文章之后都需要去博客登陆刷新一下评论,插件会在你的 repo 里面新建 issue。

我之前有篇文章叫《Hi, I’m Cortana.》,我点开这个做实验看能不能使用评论功能,原地址是

https://blog.tcpsoft.app/2019/12/29/Hi,%20I'm%20Cortana/

艰难爬坑

[ 以下多链接警告,请选择性阅读 ]

报错:redirect_uri_mismatch

看了感觉也没啥用,根据指示转到下面这篇,写的比较详细,但是是没有解决问题

我看了看我的配置,根据前面的指导写的最初的配置是这样子的:

github-config

http https 的问题?

又看了看我的请求 url,确实是都是 https,没有问题啊

后来又找到这个 gitalk issue 115 和 162,貌似是个很“权威”的解答

加 / ?

好像回调地址里面要加个 / ?加就加吧,然后

1
2
Authorization callback URL:
https://blog.tcpsoft.app/

也不行。仍然跳回主页,并提示 redirect_uri_mismatch

后来我又尝试了:

1
2
3
4
5
6
7
8
9
10
11
12
http://tcpsoftware.github.io
https://tcpsoftware.github.io
http://tcpsoftware.github.io/
https://tcpsoftware.github.io/
http://blog.tcpsoft.app
https://blog.tcpsoft.app
http://blog.tcpsoft.app/
https://blog.tcpsoft.app/
tcpsoftware.github.io
tcpsoftware.github.io
blog.tcpsoft.app
blog.tcpsoft.app

心累

然后忽然在 issue 162 翻到这个?

image-20200209140447713

中文??!

🤨

🤔

回头看了看我的 url,貌似并没有中文。

https://blog.tcpsoft.app/2019/12/29/Hi,%20I'm%20Cortana/

url 编码导致的问题?

我尝试换一个文章,在上一篇 hexo 里,可了!!它的链接是,

https://blog.tcpsoft.app/2020/02/06/hexo-changes/

呐,没有 url 编码,没有中文

🤔

issue

编码问题。

url 里面不要有特殊符号,刚才链接里面完美命中(而且链接看起来很丑可读性很差)

有特殊符号不能被匹配规则匹配到(像我刚才链接里面的 , '


解决方案

hexo new passage_name

新建文章的时候想好一个优雅的名字,如果遇到符号或者多单词,可以考虑用:

驼峰式命名法(小驼峰命名法)

hexo new helloImCortana

帕斯卡命名法(大驼峰命名法)

hexo new HelloImCortana

匈牙利命名法(本文无关)

hexo new sHelloImCortana

变量类型+变量名(逃)

下划线命名法

hexo new hello_Im_Cortana

短横线分隔(Github风格 编程必报错)

hexo new hello-Im-Cortana


再说一句

(其实上面尝试的那一大堆链接,除了最后四个没有 http https 协议的之外,其他的都是可以的)

坚持原创技术分享,您的支持将鼓励我继续创作!