飙血推荐
  • HTML教程
  • MySQL教程
  • JavaScript基础教程
  • php入门教程
  • JavaScript正则表达式运用
  • Excel函数教程
  • UEditor使用文档
  • AngularJS教程
  • ThinkPHP5.0教程

用AJAX技术聚合RSS284455示例

时间:2023-05-16  作者:匿名  
有时候,你的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 域名、RSS 1.0、Atom 0.3。

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

首先,在你Blog侧边栏合适位置加入这样一段代码:
<script src="域名" type="text/javascript"></script>
然后将下面的内容保存成“域名”,然后上传到服务器相应的位置:
  //你可以自由添加符合RSS 2.0规范的 RSS
  processRSS(\'http://域名/blog/域名\');
  processRSS(\'http://域名-域名/weblog/域名\');
  function processRSS(url){
    var req = getXMLHttpRequest();
    域名adystatechange = function () {
      if (域名yState == 4 && 域名us == 200) {
        var doc=域名mentElement;
        parseRSS(doc);
      }
    }
    域名("GET",url, true);
    域名(null);
  }
  function parseRSS(doc) {
   //如果要用RSS 域名, RSS 1.0, Atom 0.3,你需要改下面3行
    var blogName=域名lementsByTagName("title")[0].域名;
    var entryName=域名lementsByTagName("title")[1].域名;
    var entryLink=域名lementsByTagName("link")[1].域名;
  域名lementById(\'ajax_rss\').innerHTML += \'<a target="_blank" href="\'+entryLink+\'" title="\'+blogName+\'">\'+entryName+\'</a><br/>\'; }
  function getXMLHttpRequest() {
      var xmlhttp;
      try {
          xmlhttp = new ActiveXObject("域名TTP");
      } catch (e) {
          try {
              xmlhttp = new ActiveXObject("域名TTP");
          } catch (e) {
              xmlhttp = false;
          }
      }
      if (!xmlhttp && typeof XMLHttpRequest != \'undefined\') {
          xmlhttp = new XMLHttpRequest();
      }
      return xmlhttp;
  }
好了,安装结束,测试一下吧!
原文地址:

标签:编程
湘ICP备14001474号-3  投诉建议:234161800@qq.com   部分内容来源于网络,如有侵权,请联系删除。