Oggetto oggetto incorporato

ObjectHttpServer

HttpServer è uno degli oggetti integrati utilizzati per creare server HTTP. Un oggetto HttpServer contiene due parametri obbligatori: porta e oggetto interfaccia di elaborazione eventi. Nell'oggetto dell'interfaccia di elaborazione degli eventi, il metodo di implementazione specifico può essere una semplice funzione di callback o un routing complesso, matrici di elaborazione a catena, ecc.

httpL'oggetto server saràTcpServerEHttpHandlerLa combinazione di oggetti incapsulati semplifica la creazione rapida di un server, che è logicamente equivalente a:

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

Quello che segue è l'esempio di applicazione HttpServer più semplice, che restituisce semplicemente la stringa hello world a tutte le richieste.

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

Come puoi vedere dal codice, per prima cosa abbiamo importato il file built-inhttpmodulo. Quindi abbiamo creato un nuovo oggetto HttpServer e abbiamo passato due parametri necessari: uno è il numero di porta e l'altro è l'oggetto specifico dell'interfaccia di elaborazione degli eventi. In questo esempio utilizziamo una semplice funzione di callback come interfaccia di elaborazione degli eventi per rispondere ai dati provenienti dalle richieste HTTP. Che req.response.write('hello, world')viene utilizzato per rispondere alla nostra stringa hello world al client.

Dopo aver completato la creazione dell'oggetto HttpServer, utilizzare svr.start()per avviare il server in modo che possiamo ricevere richieste HTTP da Internet attraverso questo server.

rapporto ereditario

Costruttore

HttpServer

Costruttore HttpServer, in ascolto su tutti gli indirizzi locali

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

Parametri di chiamata:

  • port: intero, specificatohttpPorta di ascolto del server
  • hdlr:Handler,httpProcessore di messaggi integrato, funzione di elaborazione, array di elaborazione della catena, oggetto di instradamento, vedere per i dettaglimq.Handler

Costruttore HttpServer

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

Parametri di chiamata:

  • addr: Stringa, specificarehttpIndirizzo di ascolto del server, se è "", ascolterà su tutti gli indirizzi del computer locale.
  • port: intero, specificatohttpPorta di ascolto del server
  • hdlr:Handler,httpProcessore di messaggi integrato, funzione di elaborazione, array di elaborazione della catena, oggetto di instradamento, vedere per i dettaglimq.Handler

Costruttore HttpServer

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

Parametri di chiamata:

  • addr: Stringa, specificarehttpIndirizzo di ascolto del server, se è "", ascolterà su tutti gli indirizzi del computer locale.
  • hdlr:Handler,httpProcessore di messaggi integrato, funzione di elaborazione, array di elaborazione della catena, oggetto di instradamento, vedere per i dettaglimq.Handler

proprietà dei membri

maxHeadersCount

Intero, interroga e imposta il numero massimo di intestazioni di richiesta, il valore predefinito è 128

1
Integer HttpServer.maxHeadersCount;

maxHeaderSize

Intero, interroga e imposta la lunghezza massima dell'intestazione della richiesta, il valore predefinito è 8192

1
Integer HttpServer.maxHeaderSize;

maxBodySize

Intero, interroga e imposta la dimensione massima del corpo in MB, il valore predefinito è 64

1
Integer HttpServer.maxBodySize;

enableEncoding

Interruttore booleano della funzione di decompressione automatica, disattivato per impostazione predefinita

1
Boolean HttpServer.enableEncoding;

serverName

Stringa, interroga e imposta il nome del server, il valore predefinito è: fibjs/0.x.0

1
String HttpServer.serverName;

socket

Socket, il server è attualmente in ascoltoSocketoggetto

1
readonly Socket HttpServer.socket;

handler

Handler, l'oggetto dell'interfaccia di elaborazione eventi corrente del server

1
Handler HttpServer.handler;

funzione membro

enableCrossOrigin

Consenti richieste interdominio

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

Parametri di chiamata:

  • allowHeaders: stringa, specificata per essere accettatahttpcampo di intestazione

start

Avvia il server corrente

1
HttpServer.start();

stop

Chiudere il socket per interrompere il server in esecuzione

1
HttpServer.stop() async;

toString

Restituisce la rappresentazione in formato stringa dell'oggetto. Generalmente viene restituito "[Oggetto nativo]". L'oggetto può essere reimplementato in base alle proprie caratteristiche.

1
String HttpServer.toString();

Risultati restituiti:

  • String, restituisce la rappresentazione di stringa dell'oggetto

toJSON

Restituisce una rappresentazione in formato JSON dell'oggetto, generalmente restituendo una raccolta di proprietà leggibili definite dall'oggetto.

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

Parametri di chiamata:

  • key: Stringa, non utilizzata

Risultati restituiti:

  • Value, restituisce un valore contenente JSON serializzabile