Objekt integriertes Objekt

ObjectHttpClient

HttpClient ist eine Klassenbibliothek, die für HTTP-Client-Funktionen entwickelt wurde und grundlegende HTTP/HTTPS-Anfragen, Proxy-Zugriff, Cookie-Verwaltung und andere Funktionen bereitstellt

Mit HttpClient können Sie ganz einfach auf Webseiten zugreifen und diese bedienen. Hier ein einfaches Beispiel – Ausdrucken des Quellcodes auf einer Webseite:

1 2 3 4 5
const http = require('http'); const res = http.get('http://www.example.com/'); console.log(res.body.readAll().toString());

In diesem Beispiel wird durch require eingeführthttpModul und dann verwendenhttp.getInitiieren Sie eine Get-Anfrage, wourlDer Parameter gibt die angeforderte URL an. Weilhttp.getDie Methode gibt a zurückHttpResponseObjekt, sodass Sie über seine Body-Eigenschaft auf den von der Anfrage zurückgegebenen Textinhalt zugreifen und ihn über die toString-Methode in einen String konvertieren können.

auf AnfrageurlEs handelt sich stattdessen um den Typ httpshttpTyp, der Code muss nur geändert werdenhttpÄndern Sie es einfach in https:

1 2 3 4 5
const http = require('http'); const res = http.get('https://www.example.com/'); console.log(res.body.readAll().toString());

Darüber hinaus gibt es Beispiele für das direkte Initiieren von POST-Anfragen und das Festlegen von User-Agent über HttpClient:

1 2 3 4 5 6 7 8 9 10 11
const http = require('http'); const httpClient = new http.Client(); httpClient.userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'; const res = httpClient.post('http://www.example.com/post', { json: { name: 'fibjs', version: '0.31.0' } }); console.log(res.body.readAll().toString());

In diesem Beispiel wird zunächst ein HttpClient-Objekt httpClient erstellt und sein userAgent auf den User-Agent des Browsers festgelegt. Initiieren Sie dann über die Post-Methode eine Post-Anfrage, bei der die Parameter Name und Version den Hauptinhalt der Anfrage angeben. Abschließend wird der Hauptinhalt des Rückgabewerts ausgegeben.

Erbschaftsverhältnis

Konstrukteur

HttpClient

Der HttpClient-Konstruktor erstellt ein neues HttpClient-Objekt

1
new HttpClient();

Mitgliedereigenschaften

cookies

NArray, zurückhttpKlientHttpCookieObjektliste

1
readonly NArray HttpClient.cookies;

timeout

Ganzzahl, Abfrage und festgelegte Timeout-Einheit in Millisekunden

1
Integer HttpClient.timeout;

enableCookie

Boolescher Wert, Cookie-Funktionsschalter, standardmäßig aktiviert

1
Boolean HttpClient.enableCookie;

autoRedirect

Boolescher, automatischer Umleitungsfunktionsschalter, standardmäßig aktiviert

1
Boolean HttpClient.autoRedirect;

enableEncoding

Boolescher, automatischer Dekomprimierungsfunktionsschalter, standardmäßig aktiviert

1
Boolean HttpClient.enableEncoding;

maxHeadersCount

Geben Sie eine Ganzzahl ein, fragen Sie ab und legen Sie die maximale Anzahl von Anforderungsheadern fest. Der Standardwert ist 128

1
Integer HttpClient.maxHeadersCount;

maxHeaderSize

Geben Sie eine Ganzzahl ein, fragen Sie ab und legen Sie die maximale Länge des Anforderungsheaders fest. Der Standardwert ist 8192

1
Integer HttpClient.maxHeaderSize;

maxBodySize

Ganzzahl, Abfrage und Festlegung der maximalen Körpergröße in MB, der Standardwert ist -1, keine Größenbeschränkung

1
Integer HttpClient.maxBodySize;

userAgent

String, Abfrage und SethttpDie Browser-ID in der Anfrage

1
String HttpClient.userAgent;

poolSize

Ganzzahl, Abfrage und Festlegung der maximalen Anzahl von Keep-Alive-Cache-Verbindungen, Standard 128

1
Integer HttpClient.poolSize;

poolTimeout

Ganzzahl, Abfrage und Festlegung des Verbindungs-Timeouts für den Keep-Alive-Cache, Standard 10000 ms

1
Integer HttpClient.poolTimeout;

http_proxy

String, Abfrage und SethttpAgent anfordern, Supporthttp/https/socks5-Proxy

1
String HttpClient.http_proxy;

https_proxy

Zeichenfolge, Abfrage und Festlegen des HTTPS-Anforderungs-Proxys, Unterstützunghttp/https/socks5-Proxy, wenn nicht festgelegt oder auf leer gesetzt, wird http_proxy wiederverwendet.

1
String HttpClient.https_proxy;

sslVerification

Ganzzahl, Abfrage und Festlegung des Zertifikatsüberprüfungsmodus beim Herstellen einer Verbindung zu https, ReferenzsslVERIFY_*-Konstanten des Moduls, der Standardwert istssl.verification

1
Integer HttpClient.sslVerification;

Mitgliedsfunktion

setClientCert

Legen Sie das Standard-Client-Zertifikat fest

1 2
HttpClient.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

schickenhttpFordern Sie das angegebene Stream-Objekt an und geben Sie das Ergebnis zurück

1 2
HttpResponse HttpClient.request(Stream conn, HttpRequest req) async;

Aufrufparameter:

Rückgabeergebnisse:


schickenhttpFordern Sie das angegebene Stream-Objekt an und geben Sie das Ergebnis zurück

1 2 3
HttpResponse HttpClient.request(Stream conn, HttpRequest req, SeekableStream response_body) async;

Aufrufparameter:

Rückgabeergebnisse:


Anfrage angegebenurl, und das Ergebnis zurückgeben

1 2 3
HttpResponse HttpClient.request(String method, String url, Object opts = {}) async;

Aufrufparameter:

  • method: Zeichenfolge, angebenhttpAnforderungsmethode: GET, POST usw.
  • url: Zeichenfolge, angebenurl, muss der vollständige enthaltende Host seinurl
  • opts: Objekt, zusätzliche Informationen angeben

Rückgabeergebnisse:

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 the 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 2
HttpResponse HttpClient.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:

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

1
HttpResponse HttpClient.request(Object opts) async;

Aufrufparameter:

  • opts: Objekt, zusätzliche Informationen angeben

Rückgabeergebnisse:

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 2
HttpResponse HttpClient.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:

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 2
HttpResponse HttpClient.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:

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 2
HttpResponse HttpClient.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:

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 2
HttpResponse HttpClient.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:

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 2
HttpResponse HttpClient.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:

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


Verwenden Sie die HEAD-Methode, um das angegebene anzufordernurlund gibt das Ergebnis zurück, das request("PATCH", ...) entspricht.

1 2
HttpResponse HttpClient.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:

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


toString

Gibt die Zeichenfolgendarstellung des Objekts zurück. Im Allgemeinen wird „[Native Object]“ zurückgegeben. Das Objekt kann gemäß seinen eigenen Eigenschaften neu implementiert werden.

1
String HttpClient.toString();

Rückgabeergebnisse:

  • String, gibt die Zeichenfolgendarstellung des Objekts zurück

toJSON

Gibt eine Darstellung des Objekts im JSON-Format zurück und gibt im Allgemeinen eine Sammlung lesbarer Eigenschaften zurück, die vom Objekt definiert werden.

1
Value HttpClient.toJSON(String key = "");

Aufrufparameter:

  • key: Zeichenfolge, nicht verwendet

Rückgabeergebnisse:

  • Value, gibt einen Wert zurück, der JSON serialisierbar enthält