English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
获取请求是那些请求站点提供指定资源或某些数据的请求。
在此Node.js教程中,我们将学习如何使用请求模块从Node.js中的HTTP Web服务器处理对其他网站的“获取请求”。
Node.js有一个名为“request”的模块,它可以帮助我们向另一个网站发出请求。我们将从安装Node.js request模块开始。
打开终端或命令提示符,然后运行以下命令以安装请求Node.js模块
$npm install request |
以下是一个示例Node.js文件,其中将包含请求模块。并请求获取资源“ http://www.google.com”。作为第二个参数提供的回调函数接收error(if any),响应和正文。
// 使用请求Node.js模块处理获取请求的示例 // 引入request模块 var request = require("request"); //对资源“http://www.google.com" senden eine GET-Anfrage request("http://www.google.com",function(error,response,body) { console.log(response); });
Führen Sie das obige Node.js-Datei im Terminal aus, wie folgt
$node serverGetRequests.js |
Antwort wird in die Konsole zurückgespiegelt.
Wenn mit GET-Anfragen kein Fehler auftritt, wird der InhaltFehlerIstNullDiese Informationen können verwendet werden, um zu überprüfen, ob es in der Anfrage nach Ressourcen Fehler gibt.
In einigen Fällen können wir Fehler beim Erhalten von "GET-Anfragen" für Ressourcen auftreten. Ein Beispiel für diesen Fall ist, bei dem die angegebene URL falsch ist.
// Request-Modul enthalten var request = require("request"); // Eine GET-Anfrage für die Ressource "http:" machen//www.go1411ogle.com" request("http://www.go1411ogle.com",function(error,response,body) { console.log(error); });
Terminalausgabe
$ 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 }
In diesem Node.js-Tutorial haben wir gelernt, wie man den Request-Modul verwendet, um von einem HTTP-Webserver in Node.js auf 'GET-Anfragen' an andere Websites zuzugreifen.