獲取請求是那些請求站點提供指定資源或某些數(shù)據(jù)的請求。
在此Node.js教程中,我們將學習如何使用請求模塊從Node.js中的HTTP Web服務器處理對其他網(wǎng)站的“獲取請求”。
Node.js有一個名為“request”的模塊,它可以幫助我們向另一個網(wǎng)站發(fā)出請求。我們將從安裝Node.js request模塊開始。
打開終端或命令提示符,然后運行以下命令以安裝請求Node.js模塊
| $npm install request |
以下是一個示例Node.js文件,其中將包含請求模塊。并請求獲取資源“ http://www.google.com”。作為第二個參數(shù)提供的回調(diào)函數(shù)接收error(if any),響應和正文。
// 使用請求Node.js模塊處理獲取請求的示例
// 引入request模塊
var request = require("request");
//對資源“http://www.google.com" 發(fā)出get請求
request("http://www.google.com",function(error,response,body)
{
console.log(response);
});在終端中運行上面的Node.js文件,如下所示
| $node serverGetRequests.js |
響應將回顯到控制臺。
如果用GET請求沒有錯誤,內(nèi)容錯誤是零。此信息可用作檢查對資源的獲取請求中是否存在任何錯誤。
在某些情況下,我們可能會為資源獲取“獲取請求”時出錯。以下示例是這種情況,其中提供的URL錯誤。
// 包含請求模塊
var request = require("request");
// make a get request for the resource "http://www.go1411ogle.com"
request("http://www.go1411ogle.com",function(error,response,body)
{
console.log(error);
});終端輸出
$ node serverGetRequestsError.js
{ Error: getaddrinfo ENOTFOUND www.go1411ogle.com www.go1411ogle.com:80
at errnoException (dns.js:53:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:95:26)
code: 'ENOTFOUND',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'www.go1411ogle.com',
host: 'www.go1411ogle.com',
port: 80 }在本Node.js教程中,我們學習了如何使用請求模塊從Node.js中的HTTP Web服務器處理對其他網(wǎng)站的“獲取請求”。