国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

用AJAX技術聚合RSS

2024-09-01 08:30:00
字體:
來源:轉載
供稿:網友
有時候,你的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側邊欄合適位置加入這樣一段代碼:
<script src="ajax_rss.js" type="text/javascript"></script>
然后將下面的內容保存成“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 += '<a target="_blank" href="'+entryLink+'" title="'+blogName+'">'+entryName+'</a><br/>'; }
  function getXMLHttpRequest() {
      var xmlhttp;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 古浪县| 呈贡县| 无棣县| 诏安县| 柘城县| 通渭县| 即墨市| 绥宁县| 龙山县| 绥化市| 商都县| 阿拉善右旗| 万全县| 多伦县| 沙湾县| 林芝县| 玉溪市| 珲春市| 甘谷县| 连江县| 玉溪市| 阳泉市| 青田县| 会东县| 阿图什市| 七台河市| 淄博市| 荥阳市| 微山县| 德兴市| 沅江市| 莲花县| 铜梁县| 茂名市| 沛县| 分宜县| 南安市| 天津市| 娱乐| 嘉兴市| 天长市|