2014-03-28 51 views
0

我正在使用Node.js的小項目。什麼應該正確的GET請求和響應看起來像Node.js

目標是向網站數組發送HTTP請求並顯示他們返回給我的內容。

First someone helped me找出我需要一個特定的Node.js模塊(XMLHttpRequest)。所以我在用NPM安裝之後「需要」它。然後我實例化它。

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest; 
var xmlHttp = new XMLHttpRequest(); 

xmlHttp.open("GET", theUrl, false); 

//I don't think I need this 
xmlHttp.send(null); 

//Log some stuff to the console, namely the "response" 
console.log(xmlHttp.responseText); 
console.log(xmlHttp.statusText); 
console.log("Finished!"); 

現在我相信這是什麼會做的是發送一個GET消息「theUrl」,然後保存在XMLHTTP對象的responseText的成員的響應。

所以現在我應該有一個迴應。我應該可以將它打印爲文本(console.log(xmlHttp.responseText);)。這個迴應應該是什麼?

我希望得到類似「200 OK」的東西,但這在我得到的迴應中是無處可尋的。我以正確的方式解決這個問題嗎?

我打算使用異步Node.js模塊將這樣的請求發送到一個URL數組,修剪它們的響應(網站名稱的名稱,響應狀態代碼和每個響應標頭)。

+0

這應該有助於http://nodejs.org/api/http.html #http_http_request_options_callback –

+1

與其試圖簡單地複製瀏覽器代碼,如果使用節點,只需使用['request'模塊](https://www.npmjs.org/package/request)將會更容易。我想你會發現使用起來更簡單。有一個原因是它是NPM上最受關注的第三名。另外,由於使用量有多大,如果您對此有疑問,您將獲得更多的潛在幫助。 –

+0

你能解釋一下嗎?我需要xmlHttpRequest ...有很大的區別嗎? – user3473376

回答

0

您可以在下面使用;

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest; 

var xhr = new XMLHttpRequest(); 

xhr.onreadystatechange = function() { 
    if (this.readyState == 4) { 
     // responseText => response body as string 
     // status => 200 is OK, 404 page not found 
    } 
}; 

xhr.open("GET", "yor_url"); 
xhr.send(); 

responseText的:響應主體作爲字符串

狀態:200行,404頁沒有發現

相關問題