Objekt integriertes Objekt

ObjectHttpServer

HttpServer ist eines der integrierten Objekte, die zum Erstellen von HTTP-Servern verwendet werden. Ein HttpServer-Objekt enthält zwei erforderliche Parameter: Port und Ereignisverarbeitungsschnittstellenobjekt. Im Ereignisverarbeitungsschnittstellenobjekt kann die spezifische Implementierungsmethode eine einfache Rückruffunktion oder komplexes Routing, Kettenverarbeitungsarrays usw. sein.

httpDas Serverobjekt wird seinTcpServerUndHttpHandlerDie Kombination gekapselter Objekte erleichtert den schnellen Aufbau eines Servers, was logisch äquivalent zu Folgendem ist:

1 2 3
var svr = new net.TcpServer(addr, port, new http.Handler(function(req) { ... }));

Das Folgende ist das einfachste HttpServer-Anwendungsbeispiel, das einfach die Zeichenfolge „Hallo Welt“ an alle Anforderungen zurückgibt.

1 2 3 4 5
const http = require('http'); var svr = new http.Server(8080, (req) => { req.response.write('hello, world'); }); svr.start();

Wie Sie dem Code entnehmen können, haben wir zunächst die integrierte Funktion importierthttpModul. Dann haben wir ein neues HttpServer-Objekt erstellt und zwei notwendige Parameter übergeben: einer ist die Portnummer und der andere ist das spezifische Ereignisverarbeitungsschnittstellenobjekt. In diesem Beispiel verwenden wir eine einfache Rückruffunktion als Ereignisverarbeitungsschnittstelle, um auf Daten von HTTP-Anfragen zu antworten. Wird req.response.write('hello, world')verwendet, um dem Kunden mit unserer Zeichenfolge „Hallo Welt“ zu antworten.

Nachdem Sie die Erstellung des HttpServer-Objekts abgeschlossen haben, svr.start()starten Sie den Server mit, damit wir über diesen Server HTTP-Anfragen aus dem Internet empfangen können.

Erbschaftsverhältnis

Konstrukteur

HttpServer

HttpServer-Konstruktor, überwacht alle lokalen Adressen

1 2
new HttpServer(Integer port, Handler hdlr);

Aufrufparameter:

  • port: Ganzzahl, angegebenhttpServer-Überwachungsport
  • hdlr:Handler,httpEingebauter Nachrichtenprozessor, Verarbeitungsfunktion, Kettenverarbeitungsarray, Routing-Objekt, siehe Einzelheitenmq.Handler

HttpServer-Konstruktor

1 2 3
new HttpServer(String addr, Integer port, Handler hdlr);

Aufrufparameter:

  • addr: Zeichenfolge, angebenhttpWenn die Server-Abhöradresse „“ lautet, werden alle Adressen des lokalen Computers abgehört.
  • port: Ganzzahl, angegebenhttpServer-Überwachungsport
  • hdlr:Handler,httpEingebauter Nachrichtenprozessor, Verarbeitungsfunktion, Kettenverarbeitungsarray, Routing-Objekt, siehe Einzelheitenmq.Handler

HttpServer-Konstruktor

1 2
new HttpServer(String addr, Handler hdlr);

Aufrufparameter:

  • addr: Zeichenfolge, angebenhttpWenn die Server-Abhöradresse „“ lautet, werden alle Adressen des lokalen Computers abgehört.
  • hdlr:Handler,httpEingebauter Nachrichtenprozessor, Verarbeitungsfunktion, Kettenverarbeitungsarray, Routing-Objekt, siehe Einzelheitenmq.Handler

Mitgliedereigenschaften

maxHeadersCount

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

1
Integer HttpServer.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 HttpServer.maxHeaderSize;

maxBodySize

Geben Sie eine Ganzzahl ein, fragen Sie die maximale Körpergröße in MB ab und legen Sie sie fest. Der Standardwert ist 64

1
Integer HttpServer.maxBodySize;

enableEncoding

Boolescher, automatischer Dekomprimierungsfunktionsschalter, standardmäßig deaktiviert

1
Boolean HttpServer.enableEncoding;

serverName

Geben Sie eine Zeichenfolge ein, fragen Sie den Servernamen ab und legen Sie ihn fest. Der Standardwert ist: fibjs/0.x.0

1
String HttpServer.serverName;

socket

Socket, auf die der Server gerade lauschtSocketObjekt

1
readonly Socket HttpServer.socket;

handler

Handler, das aktuelle Ereignisverarbeitungsschnittstellenobjekt des Servers

1
Handler HttpServer.handler;

Mitgliedsfunktion

enableCrossOrigin

Erlauben Sie domänenübergreifende Anfragen

1
HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");

Aufrufparameter:

  • allowHeaders: Zeichenfolge, die zur Annahme angegeben wurdehttpHeader-Feld

start

Aktuellen Server starten

1
HttpServer.start();

stop

Schließen Sie den Socket, um den laufenden Server abzubrechen

1
HttpServer.stop() async;

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 HttpServer.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 HttpServer.toJSON(String key = "");

Aufrufparameter:

  • key: Zeichenfolge, nicht verwendet

Rückgabeergebnisse:

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