【问题标题】:How to consume and display an RSS feed using jQuery如何使用 jQuery 使用和显示 RSS 提要
【发布时间】:2011-12-11 03:35:09
【问题描述】:

我想使用 jQuery 来使用 RSS 提要,然后创建一些 HTML 内容来定义 RSS 提要中的项目。这对我来说很容易做到。 但是,我还希望我的页面在提供 RSS 提要的来源发生变化时自动更新。

例如,假设初始页面加载使用 RSS 提要并包含两个项目:{ George Washington and John Adams }

然后页面会创建两个 HTML 元素(锚标记、div 等),显示“George Washington”和“John Adams”。

30 秒后,提供 RSS 提要的源现在包含三个项目:{ George Washington、John Adams 和 Thomas Jefferson }。 如何设置我的页面,以便它知道 RSS 提要已更改,并且需要刷新/重新创建 HTML 元素以反映此更改?

最明显的答案是使用 window.setInterval 并让页面以给定的时间间隔检查 RSS 提要以查看它是否已更改。但我觉得我在这里遗漏了一些东西,并且有更好的方法来做到这一点。

任何想法将不胜感激。当谈到 RSS/Atom 提要世界时,我的无知令人震惊,所以不要假设我已经知道它(因为我很可能不知道!)并给我你的帮助!

【问题讨论】:

    标签: jquery rss


    【解决方案1】:

    除非您可以在提要更新时以某种方式获得回调,提要所有者需要提供回调,并且需要像 Node.js 这样的服务器端解决方案将回调传递给客户端,@987654321 @方式是唯一的方式。

    您可以做什么,为了避免每次检查都加载整个提要,您可以先执行HEAD 请求并检查Content-Length 是否与上次请求有任何不同。请记住,这假设了一些事情,例如 Content-Length 将被返回并且它总是会增加(如果提要只返回最后 10 个元素之类的东西,那么理论上,虽然不太可能,但你可以获得相同的 Content-Length即使有新文章)。

    【讨论】:

    • 那么,我在很多 RSS 插件上看到的回调参数通常是什么?我觉得奇怪的是,我看过的所有插件都没有办法在 RSS 发生变化时自动更新。但现在我想我可能只是误解了各种插件的工作原理。
    • 可能是。我什至不确定您所说的“RSS 插件”是什么意思。每个人的具体文档可能会有所帮助。
    • 只是我看过的各种用于 RSS 的 jQuery 插件。其中一些具有“url回调”参数。
    • 您需要的是由 RSS 提要所在的服务器实现的回调。就像您注册一个 URL 并且服务器在发布文章时执行 POST 请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-07
    • 1970-01-01
    相关资源
    最近更新 更多