[请教RSS高手]RSS如何获取早期的订阅内容

stg609 2014-03-23 02:30:59
不知道大家有没有自己写过RSS订阅源,如果你有这方面的经验,请帮我看看下面的代码存在什么问题。


我在浏览器上直接输入自己的RSS源地址,返回一个XML文件,其中只看到最新的X条记录(,而数据库中的记录要远远多于X条)。然后用QQ邮箱提供的订阅功能,也只有这X条数据,没办法浏览更早期的记录。(本人第一次订阅该地址,订阅人数1)


public FeedResult Rss()
{
postColl = service.GetLatestPosts(8); // 只取出8条记录,而数据库中实际上有几百条记录

List<SyndicationItem> itms = new List<SyndicationItem>();
foreach (var post in postColl)
{
SyndicationItem itm = new SyndicationItem(post.Title.Trim(), post.Abstract, post.Url, new DateTimeOffset(post.LastUpdateDate))
{
PublishDate = post.CreateDate
};

itms.Add(itm);
}

var feed = new SyndicationFeed(blogName, blogDescription, blogUrl, itms) { Language = Thread.CurrentThread.CurrentUICulture.Name, LastUpdatedTime = DateTime.Now };

return new FeedResult(new Rss20FeedFormatter(feed, false)) { ContentEncoding = System.Text.UTF8Encoding.UTF8 };
}


发现这个问题后,我进行了对比试验。

我同样在浏览器上输入其它人的RSS源地址(如老赵的博客),同样返回的XML文件中也只有最新的M条记录,然而用QQ邮箱订阅后看到的记录条数却不止这M条记录,包含更早期的记录(本人第一次订阅该地址,订阅人数超过700)

...全文
876 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
stg609 2014-03-25
  • 打赏
  • 举报
回复
引用 3 楼 caozhy 的回复:
也许有些blog支持open search,你传一个startIndex看看能不能获得更多。 http://www.opensearch.org/Specifications/OpenSearch/1.1#The_.22startPage.22_parameter
嗯,谢谢回复。我先了解下
threenewbee 2014-03-24
  • 打赏
  • 举报
回复
你获得的数据不会比你xml中看到的更多。你看下你的url。
threenewbee 2014-03-24
  • 打赏
  • 举报
回复
也许有些blog支持open search,你传一个startIndex看看能不能获得更多。 http://www.opensearch.org/Specifications/OpenSearch/1.1#The_.22startPage.22_parameter
stg609 2014-03-24
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
你获得的数据不会比你xml中看到的更多。你看下你的url。

我自己的RSS订阅源的确就如你所说的一样,数据不会比XML中多。

但是奇怪就奇怪在读取别人的订阅源的时候,数据却多于XML中的。看下面两张图:

我在浏览器中输入“http://blog.zhaojie.me/rss" ,得到如下图


这张XML的数据数了下,不足50条



使用QQ邮箱订阅该地址后:


看见上面的分页了吗?我数了下每页差不多有25条数据,这里有9页,也就是有100多条

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧