2012-05-17 102 views
0

我使用GET請求通過http打了一個url。我使用下面的代碼。從javascript獲取http呼叫時失敗

onReady: function() { 

     var makeAjaxRequest = function() { 


     var myUrl = encodeURI('http://domainname/VW-MAPP/fgnwasxuyu/10548168/2012-04-11 12:42:36/5555'); 
    Ext.Ajax.request({ 

     method: 'get', 
    url: myUrl, 

    success: function(response)  {  
    alert(''+response.responseText);  
    console.log("response:-"+response.responseText);  },  
    failure: function (response)  {  
    console.log("Failure");  
    console.log("response status:-"+response.status); 
    alert("Failure"); 
} 
      }); 
     }; 



     new Ext.Panel({ 
      fullscreen: true, 
      id: 'content', 
      scroll: 'vertical', 
      dockedItems: [{ 
       xtype: 'toolbar', 
       dock: 'top', 
       items: [{ 
        text: 'XMLHTTP', 
        handler: makeAjaxRequest 
       }] 
      },{ 
       id: 'status', 
       xtype: 'toolbar', 
       dock: 'bottom', 
       title: "Tap a button above." 
      }] 
     }); 
    } 
}); 

我嘗試了很多,但得到以下錯誤

的XMLHttpRequest無法加載// // URLNAME。 Access-Control-Allow-Origin不允許原始位置爲null。

如果任何人有任何想法請幫助。

感謝

回答

0

我嘗試了兩種方法

(1)甩response.xml到地域和訪問,我們得到了成功。

(2)通過命令chrome.exe禁止谷歌瀏覽器安全 - 允許文件訪問從文件 - 禁用網絡安全,並能夠通過GET方法擊中網址,並獲得成功。

2

同源策略內置瀏覽器,並阻止您進行AJAX調用比一個服務了當前頁以外的任何其他域。

如果響應是JSON,則可以使用JSON-P方法,否則您需要服務器端代理才能進行此調用。

+0

或者,如果他必須訪問其他系統,請發送正確的標題。 – ThiefMaster

+0

嗨Diodeus,非常感謝迴應。你能告訴我該怎麼做才能避免這種瀏覽器行爲?我怎樣才能使服務器的ajax調用? – Gendaful

+0

使用PHP,您可以使用CURL,但我不知道您用作服務器的是什麼。 –