我的网站上可以使用哪些技术来引入每日新鲜的更新内容,例如来自着名新闻网站的新闻RSS提要,等等?
答案 0 :(得分:1)
[更新 - 一般回答]
正如您已经提到的,RSS提要是获取更新新闻的最佳方式。它们易于使用,并为基于商品的数据提供标准界面。例如,CNN在http://rss.cnn.com/rss/cnn_topstories.rss处有他们的顶级车辆。使用Firefox浏览新闻网站时,如果网站有RSS源,它将在地址栏中显示RSS图标,这样可以更容易地发现源。
<小时/> 由于您将其标记为C#和ASP.Net,我将在编码方面对其进行回答。
许多新闻网站提供RSS源,这些可以与.Net 3.5中引入的SyndicationFeed类一起使用。 SyndicationFeed
类支持Atom 1.0和RSS 2.0。
在我看来,消费Feed时最重要的部分是缓存它们,这样就不会为网页上的每次点击下载Feed。从哪里获取您的Feed取决于您想要的主题以及您所在的世界。
这是一个简短的例子。
// Check cache for data
IEnumerable<SyndicationItem> items = Cache["NewsFeed"] as IEnumerable<SyndicationItem>;
if (items == null)
{
// Not in cache, go get it!
try
{
SyndicationFeed news = SyndicationFeed.Load(XmlReader.Create("http://www.news.corp/feed.xml"));
items = news.Items;
}
catch
{
items = new List<SyndicationItem>();
}
// Add the items to the cache
Cache.Insert("NewsFeed", items, null, DateTime.Now.AddHours(1.0), TimeSpan.Zero);
}
// Bind your data somewhere