关于评论系统那些事情

3 个月前(已编辑)
折腾 / , , ,
752
这篇文章上次修改于 3 个月前,可能部分内容已经不适用,如有疑问可询问作者。

前言

在考虑过后,我还是将陪伴了我一年的Twikoo评论系统更换成了现在的Artalk。

当然也并不是说twikoo不好,只是对于目前的我来说artalk更加的合适。

只能说这两个评论系统各有优点和缺点,我只是在这里记录一下我为什么会选择artalk,以及我搭建它的那些磕磕绊绊。

twikoo目前最明显的问题就是它Vercel搭建方式仅支持mongoDB数据库,而私有部署仅支持其内置的LokiJS数据库。(点名CKY的detalk,只支持部署在Deta上且只支持Deta内置的数据)

但如果单凭部署平台的丰富程度以及支持的数据库丰富程度来说,waline才应该是最好的选择,直到我看到了它的配置方式-->它的每一个配置项都需要单独填进环境变量里,对于我这种遇到问题就喜欢删库,重置环境,重新配置进而解决问题的人来说,这个配置方式真的是太痛苦了。

所以我选择了Artalk

Artalk

这是一种基于GoLang的评论系统,所以它的速度会很快,并且拥有一个全面的管理面板,可以方便的管理评论。

实际上我并没有将artalk部署在我自己的服务器上,而是选择了Xlenco推荐给我的Replit部署方式。

我在这里点名批评upgit,我在这里不想多说啥了,图片上传体验极差 (但是我还是得补上一句,拒绝滥用github及其他公益cdn加速服务)

所以我在这里使用了Artalk前端自带的imgUploader上传图片(博客未使用该方式上传图片,而是更换了其他方式进行上传图片的操作

imgUploader: async (file) => {
        const formData = new FormData()
        let headers = new Headers();
        formData.set('file', file)
        headers.append('Authorization', 'Token');
        headers.append('Accept', 'application/json');
        return fetch('https://example.com/api/v1/upload', {
            method: 'POST',
            headers: headers,
            body: formData,
          })
          .then((resp) => resp.json())
          .then((resp) => resp.data.links.url);
      }

代码片段由 Zkeq 提供

支持lsky-pro图片上传

尾语

溜了溜了,artalk的css在我的博客上显得有点突兀,但是我懒得折腾了,随他去吧


えい、えい、むん!

评论区加载中...