DisqusJS - 一个超轻量级的 DISQUS「评论基础模式」 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
SukkaW
V2EX    分享创造

DisqusJS - 一个超轻量级的 DISQUS「评论基础模式」

  •  4
     
  •   SukkaW
    SukkaW 2018-10-12 13:56:01 +08:00 4990 次点击
    这是一个创建于 2606 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/SukkaW/DisqusJS

    使用 Disqus API 渲染评论列表,搭配 Disqus API 的反代可以实现在网络审查地区加载 Disqus 评论列表;支持自动检测访客的 Disqus 可用性自动选择加载原生 DISQUS (评论完整模式)和 DisqusJS 提供的评论基础模式。

    npm version Author npm license Size Travis Codacy Badge Dependency Status jsDelivr Hits

    简介

    最早在 https://imququ.com 上看到了屈哥用 Disqus API 开发的「评论基础模式」供无法访问 Disqus 的访客查看评论和发表评论。同样在使用 Disqus 的我打算造一个类似的东西,至少能让不能访问 Disqus 的访客可以查看已有评论列表,于是就有了 DisqusJS。

    特性

    • 通过 Disqus API 渲染评论列表
    • 判断访客是否能访问 DISQUS,自动选择不同模式

    Demo

    https://suka.js.org/DisqusJS

    安装

    下载 经过编译和压缩的 DisqusJS 相关文件,在需要安装 DisqusJS 的页面的 </head> 之前引入 DisqusJS 的 css、在 </body> 之前引入 Disqus 的 JS:

    <link rel="stylesheet" href="disqusjs.css"> 
    <script src="disqus.js"></script> 

    也可以使用 CDN 加载上述所需文件:

    jsDelivr

    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/disqusjs.css"> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/disqus.js"></script> 

    Unpkg

    <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/disqusjs.css"> <script src="https://unpkg.com/[email protected]/dist/disqus.js"></script> 

    在需要显示评论的地方插入下述代码:

    <div id="disqus_thread"></div> <script> var disqusjs = []; disqusjs.cOnfig= { shortname: '', // Your Disqus Shortname identifier: '', // Your thread identifier url: '', // Your page URL api: '', // API Endpoint apikey: '', // Your Disqus Application API Key admin: '', // Disqus Moderator's Username adminLabel: '' // Disqus Moderator Badge Text }; </script> 

    Disqus API Application 的配置方法和 DisqusJS 配置参数说明请 阅读 DIsqusJS 的 README


    为了便于使用静态博客、没有自己的 VPS 的个人博主使用,我搭建了一个 Disqus API 的反代,直接填在 api 中即可:https://disqus.skk.moe/disqus/

    注意

    • Disqus API 无法直接通过 AJAX 创建新评论( post ),需要专门编写后端程序,所以 DisqusJS 暂时不支持「评论基础模式」下创建新评论。
    • Disqus API 也不能使用 AJAX 初始化页面(创建新 thread ),所以如果 DisquJS 检测到当前页面没有初始化,会提示是否切换到 Disqus 完整模式。

    Author 作者

    DisqusJS Sukka, Released under the GPL-3.0 License.

    Authored and maintained by Sukka with help from contributors (list).

    Personal Website Blog GitHub @SukkaW Telegram Channel @SukkaChannel

    5 条回复    2018-10-13 15:58:00 +08:00
    hentaisan
        1
    hentaisan  
       2018-10-12 14:04:49 +08:00
    感谢分享.
    vincentxue
        2
    vincentxue  
       2018-10-12 14:55:34 +08:00
    不错,感谢分享。GPLv3 略表遗憾。。
    SukkaW
        3
    SukkaW  
    OP
       2018-10-12 15:01:10 +08:00   2
    @vincentxue 选择 GPL 是因为不仅仅屈哥有做 Disqus 的「平均基础模式」,也有不少人填了相关的坑。DisqusJS 是一个仅仅依赖前端的实现,我觉得使用 GPLv3 还是可以接受的。
    如果以后为了实现初始化页面、创建新评论这两个功能,写一套 disqus sdk 的话,这个后端部分可以开成 MIT。
    Zohar
        4
    Zohar  
       2018-10-13 01:29:14 +08:00
    支持一下 qwq
    搞得我都想入坑 Disqus 了 hhhh
    SukkaW
        5
    SukkaW  
    OP
       2018-10-13 15:58:00 +08:00   1
    @Zohar 好耶
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     851 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 19:29 PVG 03:29 LAX 11:29 JFK 14:29
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86