2012-03-05 123 views
0

我正在嘗試編寫可以測試和分析http請求的核心Java腳本應用程序。我從下面的代碼開始。 Firebug net選項卡顯示302狀態錯誤。xmlhttp請求狀態302

<script type="text/javascript"> 
$(document).ready(function(){ 
var req = new XMLHttpRequest(); 
req.open("GET","http://www.google.com",true); 

req.onreadystatechange = statusListener; 
req.send(null); 
}); 
function statusListener(req){ 
    if (req.readyState == 4) 
     { 
      if (req.status == 200) { 
       var docx=req.responseXML;   
       console.log(docx);    
       } 
     } 
} 
</script> 
+0

除了'302'意味着'Found'並導致重定向到其他URL,由於跨域策略,您將無法獲得結果... – 2012-03-05 10:21:00

回答

1

3xx status codes are redirections

302表示「找到」。引用自w3.org:

請求的資源暫時駐留在不同的URI下。由於重定向有時可能會發生變化,因此客戶端應該繼續使用Request-URI來處理將來的請求。

如果您想獲取重定向到的頁面,您必須使用getResponseHeader()方法檢查響應頭中的URI。

您可以通過see here瞭解如何訪問正確的URI。

+0

我需要狀態爲200,即確定 – 2012-03-05 10:29:49

+0

此請求以請求返回200的正確URL(它重定向到的URI)。 – 2012-03-05 10:30:50

+0

我希望通過console.log(docx)獲取請求信息;這是行不通的 – 2012-03-05 10:42:29