用AJAX技术聚合RSS

有时候,你的Blog可能需要这样的功能:

  在自己Blog上聚合并显示朋友Blog的最新文章,这样方便自己及时了解朋友的消息,另外,也方便访问者找到和本Blog相关的blog和文章。

这个功能你可以叫它“Blog聚合”或者“Blog联播”,目前,实现这样功能的软件或服务都有限制:比如,Terac Sinfonia、Lilina、MXNA虽然功能都很强大,但是需要安装,不能自由定制,不能嵌入到Blog侧边栏。另一方面,目前提供这样服务的BSP只能聚合本系统内的用户,限制也很多。

为了解决以上问题,我采用AJAX(Asynchronous JavaScript + XML)技术实现了在自己Blog上聚合并显示朋友Blog的最新文章的功能,你可以根据需要,进行自由定制。默认是支持RSS 2.0规范的,Terac Miracle、Movable Type、Word Press、Donews / 博客园 / CSDN采用的.Text系统都能很好的支持,你可以自由修改,来支持RSS 0.92、RSS 1.0、Atom 0.3。

为什么采用AJAX呢?首先,聚合别人的RSS不能影响自己网站的速度,所以需要异步执行,其次,RSS本身就是一个很规范的XML文档,另外,由于聚合内容大小不可定,所以必须要局部刷新,最重要的一点,采用AJAX完全把加载解析XML的操作放到客户端进行处理,节省服务器带宽和资源,最后,这个功能我完全用JavaScript实现的,这样,不管你的blog是ASP、.Net、PHP、JSP、Perl,甚至纯HTML的都能用。下面说用法:

首先,在你Blog侧边栏合适位置加入这样一段代码:

然后将下面的内容保存成“ajax_rss.js”,然后上传到服务器相应的位置: 

  复制代码 代码如下:

//你可以自由添加符合RSS 2.0规范的 RSS 

  processRSS('http://www.songlian.cn/blog/feed.php'); 

  processRSS('http://www.bo-blog.com/weblog/feed.php'); 

  function processRSS(url){ 

    var req = getXMLHttpRequest(); 

    req.onreadystatechange = function () { 

      if (req.readyState == 4 && req.status == 200) { 

        var doc=req.responseXML.documentElement;  

        parseRSS(doc); 

      } 

    } 

    req.open("GET",url, true); 

    req.send(null); 

  } 

  function parseRSS(doc) { 

   //如果要用RSS 0.92, RSS 1.0, Atom 0.3,你需要改下面3行 

    var blogName=doc.getElementsByTagName("title")[0].firstChild.data; 

    var entryName=doc.getElementsByTagName("title")[1].firstChild.data; 

    var entryLink=doc.getElementsByTagName("link")[1].firstChild.data; 

  document.getElementById('ajax_rss').innerHTML += ''+entryName+' 

'; } 

  function getXMLHttpRequest() { 

      var xmlhttp; 

      try { 

          xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 

      } catch (e) { 

          try { 

              xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 

          } catch (e) { 

              xmlhttp = false; 

          } 

      } 

      if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { 

          xmlhttp = new XMLHttpRequest(); 

      } 

      return xmlhttp; 

  } 

好了,安装结束,测试一下吧!

时间: 2024-09-20 17:30:27

用AJAX技术聚合RSS的相关文章

用AJAX技术聚合RSS_AJAX相关

有时候,你的Blog可能需要这样的功能:   在自己Blog上聚合并显示朋友Blog的最新文章,这样方便自己及时了解朋友的消息,另外,也方便访问者找到和本Blog相关的blog和文章. 这个功能你可以叫它"Blog聚合"或者"Blog联播",目前,实现这样功能的软件或服务都有限制:比如,Terac Sinfonia.Lilina.MXNA虽然功能都很强大,但是需要安装,不能自由定制,不能嵌入到Blog侧边栏.另一方面,目前提供这样服务的BSP只能聚合本系统内的用户,

PHP和AJAX打造高级RSS聚合器

ajax|rss|高级 RSS聚合器是一种特别适合于使用标准AJAX引擎进行构建的应用程序,然而,要实现对RSS回馈的跨域的AJAX请求往往是很难的.在本文中,我将向你展示如何利用一个简单的PHP函数来实现"桥接"AJAX引擎和RSS内容. 一. 引言 现在,开发一个RSS聚合器已经不再是困难的事情,但是开发一个高质量的RSS聚合器却仍然存在相当的难度.另一方面,创建一个定制聚合器一般不是很难,并且在这种聚合器内能够提供一个你自己选择的接口.RSS聚合代表了一类特别适合于一个AJAX应

一个简单PHP函数和AJAX编制高级RSS聚合器

ajax|rss|高级|函数 RSS聚合器是一种特别适合于使用标准AJAX引擎进行构建的应用程序,然而,要实现对RSS回馈的跨域的AJAX请求往往是很难的.在本文中,我将向你展示如何利用一个简单的PHP函数来实现"桥接"AJAX引擎和RSS内容. 一. 引言 现在,开发一个RSS聚合器已经不再是困难的事情,但是开发一个高质量的RSS聚合器却仍然存在相当的难度.另一方面,创建一个定制聚合器一般不是很难,并且在这种聚合器内能够提供一个你自己选择的接口.RSS聚合代表了一类特别适合于一个AJ

AJAX初级应用-RSS无刷新聚合器的代码与下载

ajax|rss|刷新|无刷新|下载 rss.js[复制此代码]CODE:<!-- //控制ID function getId(objId){     return document.getElementById(objId) } //链接对应数组,请注明转载自http://www.cnrui.cn/blog function urlArrary(urlName){     switch(urlName){         case "clear":             re

利用PHP函数来实现“桥接”AJAX引擎和RSS内容

RSS聚合器是一种特别适合于使用标准AJAX引擎进行构建的应用程序,然而,要实现对RSS回馈的跨域的AJAX请求往往是很难的.在本文中,我将向你展示如何利用一个简单的PHP函数来实现"桥接"AJAX引擎和RSS内容. 一. 引言 现在,开发一个RSS聚合器已经不再是困难的事情,但是开发一个高质量的RSS聚合器却仍然存在相当的难度.另一方面,创建一个定制聚合器一般不是很难,并且在这种聚合器内能够提供一个你自己选择的接口.RSS聚合代表了一类特别适合于一个AJAX应用程序所消费的数据,这是

站长推荐:Ajax技术概述与现状应用

ajax|站长 AJAX全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合.Ajax并没有创造出某种具体的新技术,它所使用的所有技术都是在很多年前就已经存在了,然而Ajax以一种崭新的方式来使用所有的这些技术,使得古老的B/S方式的Web开发焕发了新的活力,迎来了第二个春天. 具体来说,Ajax基于以下的

Javascript Ajax异步读取RSS文档具体实现

 这篇文章主要介绍了Javascript Ajax异步读取RSS文档具体实现,有需要的朋友可以参考一下 RSS 是一种基于 XML的文件标准,通过符合 RSS 规范的 XML文件可以简单实现网站之间的内容共享.Ajax 是Asynchronous JavaScript and XML的缩写.通过 Ajax 技术可以经由超文本传输协议(Http) 向一个服务器发出请求并且在等待该响应时继续处理另外的数据.通过 Ajax 技术可以很容易实现读取远程 XML文件,因此,可以使用 Ajax技术实现远程访

你真正的了解Ajax?Ajax技术简述

Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合.Ajax并没有创造出某种具体的新技术,它所使用的大多数技术都是在很多年以前就已经存在了,然而Ajax以一种崭新的方式来使用所有的这些技术,使得古老的B/S方式的Web开发焕发了新的活力,迎来了第二个春天. 具体来说,Ajax基于下列这些核心技术: XHTML:对应W3C的XHTML规范,目前是XHTML1.0. CSS:对应W3C的CSS规范,目前是CSS2.0. DOM:这里的DOM主要是指HTML DOM,XM

php ajax异步读取rss文档数据_php技巧

RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是使用最广泛的XML应用.RSS搭建了信息迅速传播的一个技术平台,使得每个人都成为潜在的信息提供者. 本文实例为大家分享了php ajax异步读取rss文档数据的相关代码,供大家参考,具体内容如下 代码如下: index.html <html> <head> <script> function showRSS(str) { if (str.length==0) { documen