用ASP+Access创建网站RSS格式内容摘要_XML/RSS

RSS 是一种“轻量级、多用途、可扩展的元数据描述及联合推广格式”,也可以理解为一种规范。它本身是一种 XML 格式,用于为内容整合客户端提供选择性的、汇总过的  ;Web 内容。如今,许多站点都开始通过创建 RSS feed 向浏览者提供内容整合服务,提供新闻、站点内容的更新等等。浏览者可以通过一些客户端软件方便地得到这些组织、汇总了的信息。
那么,怎么在我们自己的网站上创建 RSS feed 呢?下面我以 Asp+Access 为例介绍一下。
既然 RSS 是一种 XML 格式的文档,那么我们就应当可以对后台数据库中的数据按照条件进行筛选、组织,然后通过 ASP生成 XML 格式的数据流,最后发送到客户端进行浏览。
数据的选取、汇集是 Asp 的拿手好戏,关键在于怎么生成 XML 格式的数据流。其实 Asp 也已经有自己的解决办法,就是在写数据前对 response 对象的ContentType 属性进行定义。如果 response.ContentType 的取值为 "text/xml",就会向浏览者发送 XML 格式的数据流。 
在 IE 浏览器中调用 RSS 源的方法和普通的链接没有什么区别,格式是: 
    <a type="application/rss+xml" href="RssFeed.asp">RSS说明</a> 
其中 type="application/rss+xml" 加不加好象没有什么区别。 

以下程序段是创建我的网站“十万个为什么”(http://www.why100000.com/)上的“技术新闻”栏目的 RSS feed 的源代码
,文件名为 RssFeed_news.asp。 
其中,变量 sXmlClear 用于声明产生的文档是一段 XML 格式的文档,该声明是可选的,以保持与旧版本 XML 的向后兼容
性。 

sRssHead 定义 Rss 的基本元素。RSS feed 通常由 4 个主要元素构成:<channel>,&l t;image>,<item> 和 
<textinput>。其中,<channel> 元素是必需的,<item> 元素至少要出现一次。<textinput> 和 <image> 元素是可选的,
是否使用要视具体情况而定。 
<channel> 元素包含 Channel(RSS feed 的来源)的一个简单描述。<title> 是频道的名称/标题;<link> 是与频道内容对
应的包含了完整内容的那个网页的 URL;<description> 是与 <channel> 的内容有关的简单描述;<language> 代表语言。
还有一些别的属性,不是太常用。 
<item> 元素用于对数据库中的记录进行描述。<item> 一般有若干项,对应了一个 Rss feed 的数据集合。 

复制代码 代码如下:

<!-Filename:RssFeed_news.asp:--> 
<% Option explicit %> 
<!-- #include file="./conn.inc" --> 

<% 
  Dim sSQL, rs, sCrLf, sXmlClear, sRssHead, sRssEnd 
  sCrLf = chr(13) & chr(10)  '回车+换行 

  sXmlClear = "<?xml version='1.0' encoding='gb2312'?>" & sCrLf 

  sRssHead = "<rss version='2.0'>" & sCrLf 
  sRssHead = sRssHead & "<channel>" & sCrLf 
  sRssHead = sRssHead & "<title> Why100000 </title>" & sCrLf 
  sRssHead = sRssHead & "<description> Why100000 </description>" & sCrLf 
  sRssHead = sRssHead & "<link>http://news.why100000.com/<;/link>" & sCrLf 
  sRssHead = sRssHead & "<language>zh-cn</language>" & sCrLf 
  sRssHead = sRssHead & "<docs>Why100000.COM News Center</docs>" & sCrLf 
  sRssHead = sRssHead & "<generator>Rss Generator By WWW.Why100000.COM</generator>" & sCrLf 

  sRssEnd = "</channel></rss>" 

  Response.CharSet="gb2312"  '数据集 
  Response.ContentType="text/xml"  '数据流格式定义 

  '输出: 
  Response.write sXmlClear 
  Response.write sRssHead 

  sSQL="select top 15 * from news order by sortid desc" 
  Set rs = Server.CreateObject("ADODB.Recordset") 
  rs.Open sSQL, s_Conn, 1, 1 
  if not (rs.eof and rs.bof) then 
    do while not rs.eof 
      response.write "<item>" & sCrLf 
      response.write "<title> " & rs("f_topic") & " </title>" & sCrLf 
      response.write "<link> " & "http://www.why100000.com/_news/show_a_new.asp?autoid="; &  

rs("f_i_autoid") & " </link>" & sCrLf 
      response.write "<author> " & rs("f_author") & " </author>" & sCrLf 
      response.write "<pubDate> " & rs("f_datetime") & " </pubDate>" & sCrLf 
      response.write "</item>" & sCrLf & sCrLf 
      rs.movenext 
    loop 
  end if 
  rs.close 
  set rs=nothing 

  Response.write sRssEnd 
%> 

IE 中的调用格式是:<a href="http://www.why100000.com/_news/RssFeed_news.asp";>技术新闻 

RSS</a>。如果用一些客户端软件订阅该 RSS,订阅的 Url 就是http://www.why100000.com/_news/RssFeed_news.asp。

时间: 2024-08-01 10:10:32

用ASP+Access创建网站RSS格式内容摘要_XML/RSS的相关文章

用ASP+Access创建网站RSS格式内容摘要

access|asp+|rss|创建|access|rss RSS 是一种"轻量级.多用途.可扩展的元数据描述及联合推广格式",也可以理解为一种规范.它本身是一种 XML 格式,用于为内容整合客户端提供选择性的.汇总过的  ;Web 内容.如今,许多站点都开始通过创建 RSS feed 向浏览者提供内容整合服务,提供新闻.站点内容的更新等等.浏览者可以通过一些客户端软件方便地得到这些组织.汇总了的信息. 那么,怎么在我们自己的网站上创建 RSS feed 呢?下面我以 Asp+Acce

用IIS+ASP+Access构建网站的安全性分析

access|asp+|iis|安全|安全性     随着Internet的发展,Web技术日新月异,人们已经不再满足于静态HTML技术,更多的是要求动态.交互的网络技术.继通用网关接口(CGI)之后,微软推出的IIS+ASP的解决方案作为一种典型的服务器端网页设计技术,被广泛应用在网上银行.电子商务.网上调查.网上查询.BBS.搜索引擎等各种互联网应用中.与此同时,Access数据库作为微软推出的以标准JET为引擎的桌面型数据库系统,由于具有操作简单.界面友好等特点,具有较大的用户群体.目前,

ASP.NET创建文件并写入内容

asp.net|创建 在ASP.NET中,文件处理的整个过程都是围绕着System.IO 这个名称空间展开的.这个名称空间中具有执行文件读.写所需要的类.本文从最基本的操作开始,解释在ASP.NET中文件处理的概念,包括如从一个文件中读取内容.如何向一个文件中写入内容和如何删除一个文件. 前面已经提到,要想在ASP.NET 页面中进行文件处理,必须要有"System.IO"名称空间.所以,第一步就是引入这个名称空间: <%@ Import Namespace="Syst

网站优化中内容摘要作用也不可小觑

网站内容是整个网站的基础,一个具有良好内容的网站不仅仅利于用户体验,而且对网站的优化起到一个重要作用.因此在网站优化过程中,网站内容的质量越高,网站就会越容易被收录,从而有效的提高网站排名.随着网站内容质量的重要性提高,内容的发布编辑也是变越来越规范.通常我们可以看到一些大型门户网站的内容都会有内容摘要,而在内容摘要中我们可以看到某些重要信息.而这一点的做法在普通企业网站内容上很少出现,事实上网站内容摘要也是相当重要,不可忽视. 下图是网易内容摘要的截图:   为什么网站内容摘要如此不可无视呢?

什么是RSS?RSS及其发展历程_XML/RSS

RSS是2004年最热门的互联网词汇之一,不过,相对于博客(BLOG)来说,RSS的知名度相应会低很多,而且至今还没有一个非常贴切的中文词汇,也许以后无需中文名,大家都习惯于直接叫RSS了.RSS之所以同BLOG一样会被认为是热门词汇的一个原因,个人推测,应该是许多分析人士认识到RSS将要对互联网内容的浏览方法所产生的巨大影响. 什么是RSS呢?RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是目前使用最广泛的XML应用.RSS搭建了信息迅速传播的一个

Asp Access 创建静态文件/HTML_应用技巧

作用说明:  本代码实现从 Access 提取数据以创建 HTML 文件, 不建文件夹. 如果文件名与要创建的文件名相同, 则覆盖, 跟 SQL 的更新一样的原理. 待加功能: 删除与查找.  复制代码 代码如下: <%  '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' ' subject : Asp 创建静态文件/HTML By Stabx ' ' writer : Stabx<shawl.

Asp Access 创建静态文件/HTML

作用说明:  本代码实现从 Access 提取数据以创建 HTML 文件, 不建文件夹. 如果文件名与要创建的文件名相同, 则覆盖, 跟 SQL 的更新一样的原理. 待加功能: 删除与查找.  复制代码 代码如下: <%  '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' ' subject : Asp 创建静态文件/HTML By Stabx ' ' writer : Stabx<shawl.

ASP Access实现网站计数器(访问量)_应用技巧

<% set conn=server.createobject("adodb.connection") connstr="Provider=Microsoft.jet.oledb.4.0;data source="&server.mappath("cou.mdb") //cou是数据库名 conn.open connstr if session("visited")<>"yes"

ASP Access实现网站计数器(访问量)

<% set conn=server.createobject("adodb.connection") connstr="Provider=Microsoft.jet.oledb.4.0;data source="&server.mappath("cou.mdb") //cou是数据库名 conn.open connstr if session("visited")<>"yes"