我想为一个有FAQ的网站实现一个非常基本的RSS源.
订阅者将被告知新的问题/答案.那很棒.
但是问题会不时地对内容进行必要的更改(例如,当找到问题的更好答案时). RSS是否能够通知订阅者这样的答案已经改变?
如果没有,那么什么是一个好的解决方法?我正在考虑提供另一个RSS feed,它只宣布对现有问题的更改.这是“正确的方法”吗?
最佳答案 答案取决于您要为其实施Feed的客户类型.
如果您正在谈论简单的RSS阅读器,则没有真正的标准来更新只有一个已更改的条目,但大多数条目正在进行长轮询,有效地通过更新再次获取所有Feed.
但是有一些称为轻型和胖式ping的协议专门用于处理您想要做的事情,两者之间的区别是:
> Light pinging意味着更改的Feed的url将发送给订阅者
> Fat pinging意味着更改的Feed的更新内容将发送给订阅者
一个非常流行的协议(胖子)和谷歌支持称为PubSubHubbub.已经有一些服务使用它,如Blogger,Youtube,MySpace,Tumblr或Wordpress.他们在their Github有很多语言的开源客户端,如果您有兴趣,我建议您查看their wiki,这是非常完整和丰富的信息.
使用第二个源进行更新似乎不是一个好主意,因为这不是它的设计目的,并且意味着您必须实现客户端以供人们安装以有效地获取更新.