modulehttp
Das http-Modul kapselt die Verarbeitung von HTTP-Anfragen und -Antworten und ermöglicht uns die einfache Erstellung eines http-Servers oder die Simulation eines Clients zum Initiieren einer http-Anfrage. Mit dem http-Modul können Entwickler problemlos Code schreiben und verarbeiten, der sich auf das HTTP-Protokoll bezieht.
Das Folgende ist ein einfaches Beispiel für die Erstellung eines Webservers und die Rückgabe einer „Hallo Welt“-Antwort:
1
2
3
4
5
6
7const http = require('http');
const server = new http.Server(8080, function(request) {
request.response.write('Hello World!');
});
server.start();
In diesem Beispiel führen wir das http-Modul ein, definieren dann ein http-Serverobjekt und binden es an die lokale 8080-Portnummer. Wenn eine Anfrage an diese Portnummer gesendet wird, wird die Antwort auf die Zeichenfolge „Hello World!“ gesetzt.
Gleichzeitig enthält das http-Modul auch Client-Objekte,http.ClientSimulieren Sie die Browserumgebung, um Cookies zwischenzuspeichern und während des Besuchs zu speichernurlBeim Tragen des entsprechenden Cookies http-Client-Objekt. du kannst es benutzenhttp.ClientGreifen Sie auf HTTP-Schnittstellenanforderungen zu, führen Sie HTTP-Downloads und eine Reihe von HTTP-bezogenen Vorgängen durch. Drunter isthttp.ClientAnwendungsbeispiele:
1
2
3
4var http = require('http');
var httpClient = new http.Client();
httpClient.get('http://fibjs.org');
Im obigen Beispiel ahttp.ClientObjekt und ruft dann get
die Methode auf, um eine http-GET-Anfrage an fibjs.org zu initiieren.
Zusätzlich,http.ClientEs gibt einige andere Eigenschaften und Methoden, die aufgerufen werden können, z. cookies
B. usw.
Das https-Modul ist ein Alias des http-Moduls. Sie require('https')
können auch das http-Modul verwenden.
Objekt
Request
Erstellen Sie ein HTTP-Anforderungsobjekt, sieheHttpRequest
1HttpRequest http.Request;
Response
Erstellen Sie ein http-Antwortobjekt, sieheHttpResponse
1HttpResponse http.Response;
Cookie
Erstellen Sie ein http-Cookie-Objekt, sieheHttpCookie
1HttpCookie http.Cookie;
Server
Erstellen Sie einen http-Server, sieheHttpServer
1HttpServer http.Server;
Client
Erstellen Sie einen http-Client, sieheHttpClient
1HttpClient http.Client;
HttpsServer
Erstellen Sie einen https-Server, sieheHttpsServer
1HttpsServer http.HttpsServer;
Handler
Erstellen Sie ein http-Protokoll-Handler-Objekt, sieheHttpHandler
1HttpHandler http.Handler;
Repeater
Erstellen Sie ein HTTP-Request-Forwarding-Handler-Objekt, sieheHttpRepeater
1HttpRepeater http.Repeater;
statische Funktion
fileHandler
Erstellen Sie einen HTTP-Prozessor für statische Dateien, um auf HTTP-Nachrichten mit statischen Dateien zu antworten
1
2
3static Handler http.fileHandler(String root,
Object mimes = {},
Boolean autoIndex = false);
Aufrufparameter:
- root: String, Dateistammpfad
- mimes: Objekt, erweiterte Mime-Einstellungen
- autoIndex: Boolescher Wert, ob das Durchsuchen von Verzeichnisdateien unterstützt werden soll. Der Standardwert ist false und wird nicht unterstützt
Rückgabeergebnisse:
- Handler, gibt einen statischen Dateiprozessor zur Verarbeitung von HTTP-Nachrichten zurück
fileHandler unterstützt die GZIP-Vorkomprimierung. Wenn die Anforderung die GZIP-Codierung akzeptiert und die Datei filename.ext.gz im selben Pfad vorhanden ist, wird diese Datei direkt zurückgegeben, wodurch eine Serverlast durch wiederholte Komprimierung vermieden wird.
setClientCert
Legen Sie das Standard-Client-Zertifikat fest
1
2static http.setClientCert(X509Cert crt,
PKey key);
Aufrufparameter:
- crt:X509Cert, Zertifikat, das zum Senden an den Server zur Überprüfung des Clients verwendet wird
- key:PKey, privater Schlüssel, der zur Kommunikation mit dem Client verwendet wird
request
Senden Sie eine http-Anfrage an das angegebene Stream-Objekt und geben Sie das Ergebnis zurück
1
2static HttpResponse http.request(Stream conn,
HttpRequest req) async;
Aufrufparameter:
- conn:Stream, gibt das Stream-Objekt an, das die Anfrage verarbeiten soll
- req:HttpRequest, zu versendenHttpRequestObjekt
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
Senden Sie eine http-Anfrage an das angegebene Stream-Objekt und geben Sie das Ergebnis zurück
1
2
3static HttpResponse http.request(Stream conn,
HttpRequest req,
SeekableStream response_body) async;
Aufrufparameter:
- conn:Stream, gibt das Stream-Objekt an, das die Anfrage verarbeiten soll
- req:HttpRequest, zu versendenHttpRequestObjekt
- response_body:SeekableStreamGeben Sie den Stream von „response.body“ an
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
Anfrage angegebenurl, und das Ergebnis zurückgeben
1
2
3static HttpResponse http.request(String method,
String url,
Object opts = {}) async;
Aufrufparameter:
- method: Zeichenfolge, geben Sie die HTTP-Anforderungsmethode an: GET, POST usw.
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {},
"response_body": SeekableStream // specify response.body stream
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
Verwenden Sie die GET-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("GET", ...) entspricht.
1
2static HttpResponse http.request(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
Anforderungsoptionen angegebenurl, und das Ergebnis zurückgeben
1static HttpResponse http.request(Object opts) async;
Aufrufparameter:
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
get
Verwenden Sie die GET-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("GET", ...) entspricht.
1
2static HttpResponse http.get(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
post
Verwenden Sie die POST-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("POST", ...) entspricht.
1
2static HttpResponse http.post(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
del
Verwenden Sie die DELETE-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("DELETE", ...) entspricht.
1
2static HttpResponse http.del(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
put
Verwenden Sie die PUT-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("PUT", ...) entspricht.
1
2static HttpResponse http.put(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
patch
Verwenden Sie die PATCH-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("PATCH", ...) entspricht.
1
2static HttpResponse http.patch(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
head
Verwenden Sie die HEAD-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("HEAD", ...) entspricht.
1
2static HttpResponse http.head(String url,
Object opts = {}) async;
Aufrufparameter:
- url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
- opts: Objekt, zusätzliche Informationen angeben
Rückgabeergebnisse:
- HttpResponse, gibt die Serverantwort zurück
opts enthält zusätzliche Optionen für die Anfrage, die wie folgt unterstützt werden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15{
"method": "GET", // specify the http request method: GET, POST, etc, default: GET.
"protocol": "http",
"slashes": true,
"username": "",
"password": "",
"hostname": "",
"port": "",
"pathname": "",
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
Unter ihnen Körper,json, Pack darf nicht gleichzeitig erscheinen. Der Standardwert ist {}, der keine zusätzlichen Informationen enthält
statische Eigenschaften
STATUS_CODES
Das Objekt gibt eine Sammlung standardmäßiger HTTP-Antwortstatuscodes und deren jeweilige Kurzbeschreibungen zurück.
1static readonly Object http.STATUS_CODES;
cookies
NArray, gibt den http-Client zurückHttpCookieObjektliste
1static readonly NArray http.cookies;
timeout
Ganzzahl, Abfrage und Zeitüberschreitung festlegen
1static Integer http.timeout;
enableCookie
Boolescher Wert, Cookie-Funktionsschalter, standardmäßig aktiviert
1static Boolean http.enableCookie;
autoRedirect
Boolescher, automatischer Umleitungsfunktionsschalter, standardmäßig aktiviert
1static Boolean http.autoRedirect;
enableEncoding
Boolescher, automatischer Dekomprimierungsfunktionsschalter, standardmäßig aktiviert
1static Boolean http.enableEncoding;
maxHeadersCount
Geben Sie eine Ganzzahl ein, fragen Sie ab und legen Sie die maximale Anzahl von Anforderungsheadern fest. Der Standardwert ist 128
1static Integer http.maxHeadersCount;
maxHeaderSize
Geben Sie eine Ganzzahl ein, fragen Sie ab und legen Sie die maximale Länge des Anforderungsheaders fest. Der Standardwert ist 8192
1static Integer http.maxHeaderSize;
maxBodySize
Ganzzahl, Abfrage und Festlegung der maximalen Körpergröße in MB, der Standardwert ist -1, keine Größenbeschränkung
1static Integer http.maxBodySize;
userAgent
Zeichenfolge, Abfrage und Festlegung der Browser-ID in der HTTP-Anfrage
1static String http.userAgent;
poolSize
Ganzzahl, Abfrage und Festlegung der maximalen Anzahl von Keep-Alive-Cache-Verbindungen, Standard 128
1static Integer http.poolSize;
poolTimeout
Ganzzahl, Abfrage und Festlegung des Verbindungs-Timeouts für den Keep-Alive-Cache, Standard 10000 ms
1static Integer http.poolTimeout;
http_proxy
Zeichenfolge, Abfrage und Festlegung des HTTP-Anforderungs-Proxys, Unterstützung des http/https/socks5-Proxys
1static String http.http_proxy;
https_proxy
Zeichenfolge, HTTPS-Anforderungs-Proxy abfragen und festlegen, http/https/socks5-Proxy unterstützen, wenn nicht festgelegt oder auf leer gesetzt, wird http_proxy wiederverwendet
1static String http.https_proxy;