Object-ingebouwd object

ObjectHttpServer

HttpServer is een van de ingebouwde objecten die wordt gebruikt om HTTP-servers te maken. Een HttpServer-object bevat twee vereiste parameters: poort- en gebeurtenisverwerkingsinterface-object. In het interfaceobject voor gebeurtenisverwerking kan de specifieke implementatiemethode een eenvoudige callback-functie zijn, of complexe routering, ketenverwerkingsarrays, enz.

httpHet serverobject zal zijnTcpServerEnHttpHandlerDoor ingekapselde objecten te combineren, kunt u eenvoudig snel een server bouwen, wat logischerwijs gelijkwaardig is aan:

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

Het volgende is het eenvoudigste HttpServer-toepassingsvoorbeeld, dat eenvoudigweg de string hello world retourneert aan alle verzoeken.

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

Zoals je aan de code kunt zien, hebben we eerst het ingebouwdehttpmodule. Vervolgens hebben we een nieuw HttpServer-object gemaakt en twee noodzakelijke parameters doorgegeven: de ene is het poortnummer en de andere is het specifieke interface-object voor gebeurtenisverwerking. In dit voorbeeld gebruiken we een eenvoudige callback-functie als interface voor gebeurtenisverwerking om te reageren op gegevens van HTTP-verzoeken. Die req.response.write('hello, world')wordt gebruikt om onze string Hallo wereld te beantwoorden aan de klant.

Nadat u het HttpServer-object hebt gemaakt, gebruikt u dit svr.start()om de server te starten, zodat we via deze server HTTP-verzoeken van internet kunnen ontvangen.

erfenis relatie

Constructeur

HttpServer

HttpServer-constructor, luister op alle lokale adressen

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

Oproepparameters:

  • port: geheel getal, gespecificeerdhttpLuisterpoort van de server
  • hdlr:Handler,httpIngebouwde berichtenprocessor, verwerkingsfunctie, ketenverwerkingsarray, routeringsobject, zie voor detailsmq.Handler

HttpServer-constructor

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

Oproepparameters:

  • addr: Tekenreeks, specificeerhttpLuisteradres van de server. Als dit "" is, luistert het naar alle adressen van de lokale machine.
  • port: geheel getal, gespecificeerdhttpLuisterpoort van de server
  • hdlr:Handler,httpIngebouwde berichtenprocessor, verwerkingsfunctie, ketenverwerkingsarray, routeringsobject, zie voor detailsmq.Handler

HttpServer-constructor

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

Oproepparameters:

  • addr: Tekenreeks, specificeerhttpLuisteradres van de server. Als dit "" is, luistert het naar alle adressen van de lokale machine.
  • hdlr:Handler,httpIngebouwde berichtenprocessor, verwerkingsfunctie, ketenverwerkingsarray, routeringsobject, zie voor detailsmq.Handler

eigenschappen van leden

maxHeadersCount

Geheel getal, query en stel het maximale aantal verzoekheaders in, de standaardwaarde is 128

1
Integer HttpServer.maxHeadersCount;

maxHeaderSize

Geheel getal, query en stel de maximale lengte van de aanvraagheader in, de standaardwaarde is 8192

1
Integer HttpServer.maxHeaderSize;

maxBodySize

Geheel getal, query en stel de maximale lichaamsgrootte in MB in, de standaardwaarde is 64

1
Integer HttpServer.maxBodySize;

enableEncoding

Boolean, automatische decompressiefunctieschakelaar, standaard uitgeschakeld

1
Boolean HttpServer.enableEncoding;

serverName

Tekenreeks, query en stel de servernaam in, de standaardwaarde is: fibjs/0.x.0

1
String HttpServer.serverName;

socket

Socket, waar de server momenteel naar luistertSocketvoorwerp

1
readonly Socket HttpServer.socket;

handler

Handler, het huidige interface-object voor gebeurtenisverwerking van de server

1
Handler HttpServer.handler;

lid functie

enableCrossOrigin

Sta cross-domein verzoeken toe

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

Oproepparameters:

  • allowHeaders: String, opgegeven om te worden geaccepteerdhttpkopveld

start

Start huidige server

1
HttpServer.start();

stop

Sluit de socket om de actieve server af te breken

1
HttpServer.stop() async;

toString

Retourneert de tekenreeksweergave van het object. Over het algemeen wordt '[Native Object]' geretourneerd. Het object kan opnieuw worden geïmplementeerd op basis van zijn eigen kenmerken.

1
String HttpServer.toString();

Resultaten retourneren:

  • String, retourneert de tekenreeksrepresentatie van het object

toJSON

Retourneert een weergave in JSON-indeling van het object, waarbij doorgaans een verzameling leesbare eigenschappen wordt geretourneerd die door het object zijn gedefinieerd.

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

Oproepparameters:

  • key: Tekenreeks, niet gebruikt

Resultaten retourneren:

  • Value, retourneert een waarde die JSON-serialiseerbaar bevat