RSS是用xml写的,它是一种使用xml来在网站上发布网页内容的一种方法,因此我们可以使用读取xml的方法来读取RSS的内容。这就RSS阅读器的原理。
下面我用ASP写一个最简单的网页RSS阅读器,并作出说明。
一、代码如下:
<%
Set http=Server.CreateObject("Microsoft.XMLHTTP")
http.Open "GET","http://rss.sina.com.cn/news/marquee/ddt.xml",False
http.send
Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.Async=False
xml.ValidateOnParse=False
xml.Load(http.ResponseXML)
Set item=xml.getElementsByTagName("item")
For i=0 To (item.Length-1)
Set title=item.Item(i).getElementsByTagName("title")
Set link=item.Item(i).getElementsByTagName("link")
Response.Write(title.Item(0).Text &" "& link.Item(0).Text &"<hr />")
Next
%>
二、说明如下:
Set http=Server.CreateObject("Microsoft.XMLHTTP")
http.Open "GET","http://rss.sina.com.cn/news/marquee/ddt.xml",False
http.send
上面这段代码用于创建一个XMLHttpRequest对象,以实现跨域访问远程服务器上的XML文档
Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.Async=False
xml.ValidateOnParse=False
xml.Load(http.ResponseXML)
上面这段代码创建一个Microsoft's XML parser(微软XML解析器)对象,并将http.ResponseXML得到的XML文档装入其中,以便解析处理XML文档。
Set item=xml.getElementsByTagName("item")
For i=0 To (item.Length-1)
Set title=item.Item(i).getElementsByTagName("title")
Set link=item.Item(i).getElementsByTagName("link")
Response.Write(title.Item(0).Text &" "& link.Item(0).Text &"<hr />")
Next
其中Set item=xml.getElementsByTagName("item"),使用微软XML解析器对象的getElementsByTagName方法来返回一个包含XML文档中所有名为item的结点的一个数组。之后的代码就是对数组的操作并输出。