基於GitHub Issues的評論系統--gitment

逆月翎發表於2019-09-21

文章原創於公眾號:程式猿周先森。本平臺不定時更新,喜歡我的文章,歡迎關注我的微信公眾號。file

最近在做個人部落格網站,需要評論系統,比較流行的幾個第三方評論系統:多說,友言,網易雲跟帖,gitment,之前使用過多說,感覺挺好用的,但是現在多說伺服器已經關閉了,最後我選擇了gitment這個評論系統,因為個人部落格網站面對的人群比較偏向IT領域,gitment是使用GitHub賬號進行授權登入,所以可以省卻使用者註冊登入等操作。Gitment 是基於 GitHub Issues 的評論系統。支援在前端直接引入,不需要任何後端程式碼。可以在頁面進行登入、檢視、評論、點贊等操作,同時有完整的 Markdown 和程式碼高亮支援。適合各種靜態部落格或專案頁面。

1.註冊OAuth Application進入GitHub官網https://github.com/ ,點選右上角頭像,選擇settingfile

進入setting後選擇developer settingfile

選擇new OAuth appfile

前面三個引數可以隨意填寫,第四個引數很重要,是回撥URL,這個一定不能填寫錯,一般填寫你部落格主頁地址,我目前部落格還未上線是內網穿透到外網生成部落格測試地址,所以我回撥URL填寫了http://zhanyue.natapp1.cc ,也就是我部落格主頁地址,填寫完成點選Register applicationfile

註冊應用成功後,可以得到你應用的Client ID, Client Secret,然後到這裡註冊成功。

2.在HTML中設定一個div,用來放置評論系統file

評論系統所需包有以下兩個:https://imsun.github.io/gitment/style/default.css

https://imsun.github.io/gitment/dist/gitment.browser.js

直接在介面中引入如上兩個檔案就可以了。

3.設定引數,渲染評論系統file

評論系統分為兩部分,第一部分渲染頁面估計都能看懂,唯一需要注意的就是gitment目前只支援編碼en-US,第二部分就是評論系統的配置資訊:

    1. id:  我們文章的id,用來區分是哪一篇文章。複製程式碼
    1. owner: GitHub賬戶的username複製程式碼
    1. repo: GitHub的倉庫名複製程式碼
    1. Client_id: 步驟1得到的Client_id複製程式碼
    1. Client_secret: 步驟1得到的Client_secret複製程式碼

到這裡我們就可以成功搭建部落格系統了,接下來讓我們測試一下。不過gitment每篇部落格都需要你手動初始化評論功能(如果你的歷史部落格很多那就一篇一篇去點吧,不過貌似有人寫了批量處理指令碼,沒試過哈).file

評論系統成功進行顯示了,但是好像出了點問題:Error: Comments Not Initialized,其實這個不是出問題,這個是因為這篇文章的評論系統還未進行初始化,上面說過gitment每篇文章都需要手動進行初始化。

點選登入,第一次會出現授權GitHub賬號登入的驗證,授權登入完成會發現剛才的Error消失了file

點選最下方的初始化評論,對這篇文章進行初始化,然後就可以正常使用評論系統了。filefile

從圖中我們可以看到評論系統可以正常使用了到這裡基於GitHub Issues的評論外掛--gitment開發就完成了。最後再說說gitment開發容易碰到的幾個坑吧。

1.Error: Not Found問題

owner或者repo配置錯誤了,注意GitHub和倉庫名字的大小寫。

2.Error: Comments Not Initialized這個問題要麼你回撥URL填寫的有問題,要麼就是剛才說的你還未進行登入。

3.登入報錯[object ProgressEvent]

file

我用postman測試發現這個錯誤完全是因為gitment作者的騷操作,伺服器過期了,但是作者原始碼進行開放了,可以自己clone原始碼然後放置到伺服器進行使用,我的話使用了GitHub一個網友自己搭建的伺服器:file

因為我是將包進行下載到本地然後用webpack進行打包使用,所以直接在gitment.js包中找到如圖程式碼,將地址更換為file

然後就可以成功使用GitHub賬號進行登入評論了。

關於gitment評論系統的使用就講到這裡,歡迎加入我的技術群一起學習。公眾號主頁有群二維碼。不定期在群裡更新學習資源。

歡迎關注我個人公眾號:程式猿周先森file

相關文章