解決跨站點XMLHttp請求的一個變通方法_Xml教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:淺談使用XMLHttpRequest與DOM對象
      XMLHttpRequest對象 在使用XMLHttpRequest對象發送請求和處理響應之前,必須先用JavaScript創建一個XMLHttpRequest對象。由于XMLHttpRequest不是一個W3C標準,所以可以采用多種方法使用JavaScript來創建XMLHttpRequest的實例。IE把XMLHttpRequest實現一個Act

      用戶在打了IE的最新補丁后,IE默認配置下,使用 XMLHttp 將無法跨站點訪問,比如在 http://community.csdn.net/ 的頁面就無法訪問 http://message.csdn.net/ 的頁面。會報如下錯誤:

      ---------------------------
      錯誤
      ---------------------------
      出現了運行時間錯誤。
      是否要進行調試?

      行: 49
      錯誤: 拒絕訪問。
      ---------------------------
      是(Y) 否(N)
      ---------------------------

      解決方法之一:
      原理,使用下面的方式調用腳本,是可以跨網站的:
      <script id=message language=javascript src="******************"></script>

      于是乎,我們可以用下面的代碼方式實現跨網站的腳本調用。進而變通的實現 XMLHttp 所無法跨網站的調用。

      var Url = "http://message.csdn.net/********":
      var ScriptName = "CheckUserHasNewMessage";

      var head= document.getElementsByTagName("head").item(0);
      var old = document.getElementById(ScriptName);
      if (old) head.removeChild(old);

      var script = document.createElement("SCRIPT");
      script.src = Url;
      script.defer = true;
      script.type = "text/javascript";
      script.id = ScriptName;
      head.appendChild(script);

      這個腳本要求被調用方,返回的是 JS 腳本。你可以在調用方事先寫一些函數,然后被調用返回這些函數的調用。
      以上方法在最前版本的 IE、FireFox 默認設置下均沒問題。。

       

      分享:如何了解認識XML
      XML被設計用來描述數據,其焦點是數據的內容。 HTML被設計用來顯示數據,其焦點是數據的外觀。 應該掌握的基礎知識: 在您繼續學習之前,需要對以下知識有基本的了解: HTML / XHTML JavaScript or VBScript 什么是XML? XML指 可擴展標記語言 (EXtensible M

      來源:模板無憂//所屬分類:Xml教程/更新時間:2010-02-16
      相關Xml教程