ObjectHttpServer
HttpServer é un dos obxectos integrados, que é o obxecto usado para crear servidores HTTP. Un obxecto HttpServer contén dous parámetros obrigatorios: o porto e o obxecto de interface de procesamento de eventos. No obxecto de interface de procesamento de eventos, o método de implementación específico pode ser unha simple función de devolución de chamada ou usar rutas complexas, matrices de procesamento encadeada, etc.
httpO obxecto servidor é oTcpServereHttpHandlerA combinación de obxectos encapsulados é conveniente para crear servidores rapidamente, o que loxicamente é equivalente a:
1
2
3var svr = new net.TcpServer(addr, port, new http.Handler(function(req) {
...
}));
O seguinte é un exemplo de aplicación do HttpServer máis sinxelo, só devolve a cadea ola mundo para todas as solicitudes.
1
2
3
4
5const http = require('http');
var svr = new http.Server(8080, (req) => {
req.response.write('hello, world');
});
svr.start();
Como podes ver no código, primeiro importamos o incorporadohttpmódulo. Despois creamos un novo obxecto HttpServer e pasamos dous parámetros necesarios: un é o número de porto e outro é o obxecto da interface de procesamento de eventos específicos. Neste exemplo, usamos unha función de devolución de chamada sinxela como interface de xestión de eventos para responder aos datos das solicitudes HTTP. onde req.response.write('hello, world')
se usa para responder a nosa cadea Ola mundo ao cliente.
Despois de completar a creación do obxecto HttpServer, utilízao svr.start()
para iniciar o servidor, para que poidamos recibir solicitudes HTTP de Internet a través deste servidor.
relación de herdanza
Construtor
HttpServer
Construtor HttpServer, escoita todos os enderezos nativos
1
2new HttpServer(Integer port,
Handler hdlr);
Parámetros de chamada:
- port: Número enteiro, especificadohttpporto de escoita do servidor
- hdlr:Handler,httpProcesadores de mensaxes integrados, funcións de procesamento, matrices de procesamento encadeada, obxectos de enrutamento, consultemq.Handler
Construtor HttpServer
1
2
3new HttpServer(String addr,
Integer port,
Handler hdlr);
Parámetros de chamada:
- addr: Cadena, especificadahttpO servidor escoita o enderezo, se é "", escoita todos os enderezos da máquina
- port: Número enteiro, especificadohttpporto de escoita do servidor
- hdlr:Handler,httpProcesadores de mensaxes integrados, funcións de procesamento, matrices de procesamento encadeada, obxectos de enrutamento, consultemq.Handler
Construtor HttpServer
1
2new HttpServer(String addr,
Handler hdlr);
Parámetros de chamada:
- addr: Cadena, especificadahttpO servidor escoita o enderezo, se é "", escoita todos os enderezos da máquina
- hdlr:Handler,httpProcesadores de mensaxes integrados, funcións de procesamento, matrices de procesamento encadeada, obxectos de enrutamento, consultemq.Handler
atributo de membro
maxHeadersCount
Número enteiro, consulta e establece o número máximo de cabeceiras de solicitude, o valor predeterminado é 128
1Integer HttpServer.maxHeadersCount;
maxBodySize
Enteiro, consulta e establece o tamaño máximo do corpo, en MB, o valor predeterminado é 64
1Integer HttpServer.maxBodySize;
enableEncoding
Booleano, interruptor de función de descompresión automática, o valor predeterminado está desactivado
1Boolean HttpServer.enableEncoding;
serverName
Cadena, consulta e establece o nome do servidor, o predeterminado é: fibjs/0.x.0
1String HttpServer.serverName;
socket
Socket, o servidor está escoitandoSocketobxecto
1readonly Socket HttpServer.socket;
handler
Handler, o obxecto da interface de procesamento de eventos actual do servidor
1Handler HttpServer.handler;
función de membro
enableCrossOrigin
Permitir solicitudes entre dominios
1HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");
Parámetros de chamada:
- allowHeaders: Cadea, especifica o aceptadohttpcampo de cabeceira
start
Inicia o servidor actual
1HttpServer.start();
stop
Ao pechar o socket aborta o servidor en execución
1HttpServer.stop() async;
toString
Devolve a representación en cadea do obxecto, xeralmente devolve "[Obxecto nativo]", o obxecto pódese reimplementar segundo as súas propias características
1String HttpServer.toString();
devolver resultado:
- String, devolve unha representación en cadea do obxecto
toJSON
Devolve a representación en formato JSON do obxecto, xeralmente devolve unha colección de propiedades lexibles definidas polo obxecto
1Value HttpServer.toJSON(String key = "");
Parámetros de chamada:
- key: Cadena, non usada
devolver resultado:
- Value, que devolve un valor serializable por JSON