6

我用 Java Rome lib 创建了一个 RSS 提要。该项目已接近尾声。但我在一些 RSS 客户端中发现了奇怪的行为。

我认为这更像是 RSS 客户端的问题,但我想确定一下。

Rome 将项目保存在一个列表中,因此最新的项目位于列表的末尾。我在我的 RSS 客户端(Firefox 和 RSS Bandit)中打开了我的提要,我发现它们的顺序是相反的(从技术上讲,它是按时间顺序排列的,但与我使用的顺序相比是相反的)。

我认为这是一个 RSS 客户端错误(我通常使用 Google Reader),但我检查了 Internet 上的一些提要,发现它们正确显示的原因是它们具有反向排序的项目(最旧的在顶部)。

但是 XML 解析器不应该依赖于项目顺序。为什么 RSS 客户端使用项目顺序而不是日期来对项目进行排序?

而且,最重要的是,我应该重新排列我的物品清单吗?

编辑: 我找到了一个简单的解决方案:

     entries.add(0,entry); // :-)

但是关于“正确”客户行为的问题仍然存在。

4

2 回答 2

8

RSS 的一个潜在问题是,实际上没有一个标准的字段使用是明确定义的。我会更担心客户端和服务器实际上似乎在做什么,而不是你认为规范理论上告诉他们做什么......

于 2009-12-02T09:19:21.390 回答
0

我有一个问题:这不是客户问题吗,您是否正确发布了每个项目的日期。理想情况下,客户应该使用发布日期进行排序,并且每个项目都应该有一个 GUID 供客户正确识别。

于 2009-12-02T09:23:25.280 回答