惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
J
Java Code Geeks
V
V2EX
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
B
Blog
A
About on SuperTechFans
有赞技术团队
有赞技术团队
月光博客
月光博客
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
腾讯CDC
美团技术团队
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
N
Netflix TechBlog - Medium
C
Check Point Blog
Recent Announcements
Recent Announcements
博客园 - Franky
博客园 - 叶小钗
T
Tailwind CSS Blog

Java不加糖的Blog

假设, AI 把我代替的那一刻真的到来 | szhshp 的第三边境研究所 小傻瓜都能懂的 AstrBot QQ 机器人集成 MCP 功能实战指南 | szhshp 的第三边境研究所 《智人之上: 从石器时代到 AI 时代的信息网络简史》阅读笔记 | szhshp 的第三边境研究所 iPadOS 26 无法设置空间场景图片壁纸的解决方法 | szhshp 的第三边境研究所 《一路云海》(终) | szhshp 的第三边境研究所 《一路云海》(四): 如何不按套路旅行 | szhshp 的第三边境研究所 《一路云海》(三): In Ya Mellow Tone | szhshp 的第三边境研究所 《一路云海》(二): 关西世博参观纪实 | szhshp 的第三边境研究所 《一路云海》(一): 新的征程 | szhshp 的第三边境研究所 2025 大阪世博会 [ 3 天前-先到先得 ] 阶段 场馆预约必中独家攻略 | szhshp 的第三边境研究所 Hackathon 随想 | szhshp 的第三边境研究所 一杯双皮奶 | szhshp 的第三边境研究所 Armbian + CasaOS + NAS 配置指南 | szhshp 的第三边境研究所 Docker 构建镜像报错: error getting credentials - err: exit status 1, out: `` | szhshp 的第三边境研究所 Disqus RIP! 论过高的维护成本如何治疗固执的坏习惯 | szhshp 的第三边境研究所 炸弹猫桌游变体规则 | szhshp 的第三边境研究所 《小岛经济学》阅读笔记 | szhshp 的第三边境研究所 《金钱心理学》阅读笔记 | szhshp 的第三边境研究所 为知笔记 RIP: 迁移剩余的笔记 | szhshp 的第三边境研究所 2025 博客第十年展望 - 再见我的过去 | szhshp 的第三边境研究所 我在独立游戏里面致敬的作品 | szhshp 的第三边境研究所 《How to make thing faster》阅读笔记 | szhshp 的第三边境研究所 《The Art of Clean Code》阅读笔记 | szhshp 的第三边境研究所 《Clean Architecture: A Craftsman Guide to Software Structure and Design》阅读笔记 | szhshp 的第三边境研究所 《How AI Works》阅读笔记 | szhshp 的第三边境研究所 游戏策划废案 - Project Uranus | szhshp 的第三边境研究所 游戏策划废案 - Project X | szhshp 的第三边境研究所 人生第一款独立游戏开发复盘 | szhshp 的第三边境研究所 Trap of Life | szhshp 的第三边境研究所 wireguard折腾记录
Disqus评论框改造工程-"最近评论"的实现 | szhshp 的第三边境...
2017-04-29 · via Java不加糖的Blog

Meta

目录

最近从多说迁移到了Disqus,确实老东家做的插件会好得多,唯一的麻烦就是需要一些步骤才能看到评论框。

大多功能都还凑合。唯一不满意的就是CSS风格。因为是Iframe,所以Basic Usage里面没有提到Style相关的东西。因此我试着搜了一下发现Basic Usage的确无法修改CSS,需要用某种办法调用官方API。

本来也没多在意,也就一个Disqus的Logo放在那儿还看得过去,今天试着用他们Advanced Usage里面加了个最近评论框,同样也是Iframe,不过各种padding加起来之后丑得不行。

毕竟是最大的三方评论供应商,他们的API及其详细。

  1. 首先你肯定已经有了Disqus账号,在Application这里需要注册一下对应的域名,类似于JS跨域域名注册,获得两个Key

  2. 当前通过JS提交的需求只需要Public-Key,然后进行各种get请求,Making Requests一章内介绍了如何进行请求,实际上就是告诉你记得把Key传过去

  3. Documents 页面找到我们需要的call,也就是Forums/listPosts

    注意还有其他的listPosts的需求,当前我们使用的是全站评论

  4. 用里面提供的URL加上自己的Key组成链接:

    https://disqus.com/api/3.0/forums/listPosts.json?forum=szhshp&api_key=5Q2Sxxk5WInPOlTllkJKdswsl7M4vtWiY0QrRKXIHtBeJl4YWPa0vbay49KFvQa6
  5. 直接在浏览器点开就能看到目标JSON

    简简单单

  6. 已经可以自行输出对应的评论作者/评论内容,甚至一同返回了纯文本和富文本两种内容,最后将返回的数据进行渲染一下:

        $.ajax({
         url: 'https://disqus.com/api/3.0/forums/listPosts.json?',
         dataType: 'json',
         data: {
           "forum": 'szhshp',
           "api_key": '5Q2Sxxk5WInPOlTllkJKdswsl7M4vtWiY0QrRKXIHtBeJl4YWPa0vbay49KFvQa6',
           "limit" : 10,
           "related": "thread"
         },
        }).done(function(res) {
         for (var i = 0; i < res.response.length; i++) {
           $('<a href=' + res.response[i].url+ '> ' + res.response[i].author.name+ '</a>:  '+res.response[i].raw_message+' <br>').appendTo('#recentComments');
         };
         $('#recentComments').toggleClass('show');
        }).fail(function() {
        })
  7. 最终效果

反正剩下的可以自由修改了,当然要你能够访问Disqus才能进行AJAX,同时AJAX成功我才会让Div显示,如果访问Disqus遇到问题,可以参考 这个解决方案

过段时间我有心情再看看是不是自己写个评论框插件出来,至少能清理掉很多不想看到的部分。

参考文献