我正在为我们使用的自定义任务系统开发RSS提要,而我仍然围绕着事情应该如何运作。我想要的是为每个用户显示分配给他们的任务的提要,另外还有显示任务更新的每个任务的提要。
我现在想知道的是用户Feed。当更新分配给用户的案例时,我目前有代码来更改该项目的pubDate条目和该渠道的lastBuildDate。我希望这会使项目在读者中显示为未读,以便用户知道再次查看该项目,但似乎并非如此。我应该改变guid,即使它真的是相同的项目吗?这有什么副作用?
有什么我想念的吗?我该如何解决这个问题?
答案 0 :(得分:3)
更改< pubDate>确实表明条目已更改,但并不要求给定的RSS阅读器对其执行任何操作。 (严格来说,没有任何要求比RSS阅读器做任何事情,但让我们保持合理。)一些读者做标记更新后的更新条目。例如,Bloglines.com可以可选地检测< description>中的更改。如果是这种情况,请将条目再次标记为新的。
根据您的阅读器,更改< title>,< description>或< pubDate>可能会给你你想要的行为。但是正如GateKiller上面提到的那样,你最安全的选择是使用新的< guid>来创建一个全新的条目。在您使用它时,您可能希望将其用作添加直接链接或更新详细信息的机会。
当然,如果您同时撰写RSS的制作人和使用者,并且您的目标是提要始终包含完整的已分配任务集,则只需更新< pubDate>会工作得很好。
答案 1 :(得分:1)
解决方案是更改GUID,这意味着包括更新的时间。 GUID为Feed中的每个项目提供唯一性,如果您在其中更新日期,则会将其标记为未读。