0

我正在使用Backbone的fetch從遠程服務器獲取數據。它適用於所有瀏覽器,但IE瀏覽器(當然),因爲IE要求您使用XDomainRequest而不是XHR跨站點。我是否必須用下面的代碼替換應用程序中的每個抓取?Backbone fetch()對於IE失敗

var xdr = new XDomainRequest(); 
     xdr.open("get", url); 
     xdr.onload = function() { 
      // XDomainRequest doesn't provide responseXml, so if you need it: 
      var dom = new ActiveXObject("Microsoft.XMLDOM"); 
      dom.async = false; 
      dom.loadXML(xdr.responseText); 

     }; 

     xdr.onsuccess = success; 
     xdr.onerror=error; 
     xdr.send(); 

我也在創建一個SCRIPT5:「Access is denied」錯誤,當我使用上面的代碼。

在IE中不能正確處理主幹獲取或者我做錯了什麼?

+0

以前沒有人經歷過這個嗎?我是第一個嗎? – evkorres 2013-04-26 19:58:00

+0

IE7不支持跨域請求。從IE8開始,它支持跨域,但使用自己的對象。有關詳細信息,請參見此頁http://msdn.microsoft.com/zh-cn/library/ms537505%28VS.85%29.aspx – ricardohdz 2013-04-28 22:09:36

回答

0

我們正試圖使它與node.js服務器一起工作。

node.js有模塊node-http-proxy,我們正在設置一個攔截所有調用的代理服務器。

所以當有來自IE 8/9的呼叫時,我們會修改它。