再见评论,欢迎 Webmentions 🙋🏼‍♂️

2025-05-25

再见评论,欢迎 Webmentions 🙋🏼‍♂️

最后,我转而使用 Webmentions,并不是因为我讨厌评论,而是因为它不适合这个平台。

您可能想知道,他在说什么?

让我更详细地解释一下。

网络提及

什么是 Webmentions?

Webmentions 是针对网络上的事物做出回应的开放标准。它目前处于W3C 推荐状态

因此,当您链接到某个网站时,您可以发送 Webmention 来通知该网站。

你几乎可以把它比作pingback!你以前就知道了。

但是 Webmentions 更棒,因为它们可以包含数据!

例如,Webmention 中的数据可以是:喜欢、转发、评论或其他内容。

那么这些 Webmentions 是如何工作的呢?

在基本的网络提及中,其工作方式如下:

  1. 我在这个网站上撰写有关 Webmentions 的文章。
  2. 然后雷伊会在他的网站上写关于 Webmentions 的文章,但链接到我的文章
  3. Rey 的发布软件现在会向我的网站发送 Webmention
  4. 我的软件检查确实存在链接,并将在我的网站上包含 Rey 的 Webmention!

就我而言,如果您发推文并包含指向我的一篇文章的链接,您将看到很多来自 Twitter 的 Webmentions!

如何在我的网站上获得 Webmentions?

当然,这是一个价值百万美元的问题,而且它需要几个步骤才能解决。

  1. 托管 Webmention 端点或使用第三方(如webmention.io)

Webmention.io 是一项免费服务,由出色的独立网络大拿 Aaron Parecki打造。快来了解一下他的作品吧!

  1. 使用其IndieAuth 流程登录 Webmention.io

  2. 现在您将获得两个需要包含在头脑中的链接

<link rel="pingback" href="https://webmention.io/daily-dev-tips.com/xmlrpc">
<link rel="webmention" href="https://webmention.io/daily-dev-tips.com/webmention">
Enter fullscreen mode Exit fullscreen mode
  1. 找到一个可以连接这些 Webmention 的服务。Bridgy是一款很棒的服务,可以将您的社交提及转换为 Webmention!

  2. Bridgy 现在会分析我们的推文,如果找到,就会向我们的终端发送一个 Webmention。其中一个条目如下所示:

{
    "type": "entry",
    "author": {
        "type": "card",
        "name": "Ido Shamun",
        "photo": "https://webmention.io/avatar/pbs.twimg.com/d3cd0af823ba866fc0438b06151ace371d762e07bc61536fe895e7f4aca6520d.jpg",
        "url": "https://twitter.com/idoshamun"
    },
    "url": "https://twitter.com/idoshamun/status/1305098804597854213",
    "published": "2020-09-13T10:59:37+00:00",
    "wm-received": "2020-09-14T07:00:42Z",
    "wm-id": 851613,
    "wm-source": "https://brid-gy.appspot.com/comment/twitter/DailyDevTips1/1305027118166937600/1305098804597854213",
    "wm-target": "https://daily-dev-tips.com/posts/top-10-chrome-extensions-for-developers-%F0%9F%91%80/",
    "content": {
        "html": "Thank you! 🤩\n<a class=\"u-mention\" href=\"https://daily-dev-tips.com/\"></a>\n<a class=\"u-mention\" href=\"https://twitter.com/DailyDevTips1\"></a>",
        "text": "Thank you! 🤩"
    },
    "in-reply-to": "https://daily-dev-tips.com/posts/top-10-chrome-extensions-for-developers-%F0%9F%91%80/",
    "wm-property": "in-reply-to",
    "wm-private": false
}
Enter fullscreen mode Exit fullscreen mode

好的,很酷,现在怎么办?

是的,我们现在有 Webmentions,并且我们的网站接受它们,但是我们如何展示它们呢?

好吧,webmention.io 附带了一个我们可以利用的出色的 API。

获取我们域名的所有 Web 提及

我们可以运行以下查询来获取我们域的所有 Webmentions:

curl --location --request GET 'https://webmention.io/api/mentions.jf2?domain={DOMAIN}&token={TOKEN}'
Enter fullscreen mode Exit fullscreen mode

例如,域名为:daily-dev-tips.com。令牌可从 webmention.io 获取。

获取特定 URL 的 Webmention

我们还可以使用公共端点来获取一个特定 URL 的所有 Web 提及。

curl --location --request GET 'https://webmention.io/api/mentions.jf2?target=https://daily-dev-tips.com/posts/getting-started-with-the-html-canvas/'
Enter fullscreen mode Exit fullscreen mode

正如swyx指出的那样,结尾的斜线非常重要!

然后我们可以使用 JavaScript 在我们的网站上显示这些内容。

我将撰写另一篇文章,介绍如何将它们完全集成到 Eleventy 静态博客中!

欢迎随意尝试并在推特上发布这篇文章

感谢您的阅读,让我们联系起来!

感谢您阅读我的博客。欢迎订阅我的电子邮件简报,并在FacebookTwitter上与我联系。

文章来源:https://dev.to/dailydevtips1/goodbye-comments-welcome-webmentions-499g
PREV
永不停止学习
NEXT
使用 JavaScript 代理 proxy-pants 检测对象变化