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
3var 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
5const 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
2new 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
3new 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
2new 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
1Integer HttpServer.maxHeadersCount;
maxHeaderSize
Geheel getal, query en stel de maximale lengte van de aanvraagheader in, de standaardwaarde is 8192
1Integer HttpServer.maxHeaderSize;
maxBodySize
Geheel getal, query en stel de maximale lichaamsgrootte in MB in, de standaardwaarde is 64
1Integer HttpServer.maxBodySize;
enableEncoding
Boolean, automatische decompressiefunctieschakelaar, standaard uitgeschakeld
1Boolean HttpServer.enableEncoding;
serverName
Tekenreeks, query en stel de servernaam in, de standaardwaarde is: fibjs/0.x.0
1String HttpServer.serverName;
socket
Socket, waar de server momenteel naar luistertSocketvoorwerp
1readonly Socket HttpServer.socket;
handler
Handler, het huidige interface-object voor gebeurtenisverwerking van de server
1Handler HttpServer.handler;
lid functie
enableCrossOrigin
Sta cross-domein verzoeken toe
1HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");
Oproepparameters:
- allowHeaders: String, opgegeven om te worden geaccepteerdhttpkopveld
start
Start huidige server
1HttpServer.start();
stop
Sluit de socket om de actieve server af te breken
1HttpServer.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.
1String 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.
1Value HttpServer.toJSON(String key = "");
Oproepparameters:
- key: Tekenreeks, niet gebruikt
Resultaten retourneren:
- Value, retourneert een waarde die JSON-serialiseerbaar bevat