当前位置: 网学 > 编程文档 > Ajax > 正文

用AJAX技术聚合RSS

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/07/10

【编者按】:网学网Ajax为您提供用AJAX技术聚合RSS参考,解决您在用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").firstChild.data; 
    var entryLink=doc.getElementsByTagName("link").firstChild.data; 
  document.getElementById(''ajax_rss'').innerHTML += ''''+entryName+'' 
''; } 
  function getXMLHttpRequest() { 
      var xmlhttp; 
      tr
  • 下一篇资讯: AjaxUI:鼠标拖拽
  • 网学推荐

    免费论文

    原创论文

    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号