ObjetoHttpServer
HttpServer es uno de los objetos integrados que se utiliza para crear servidores HTTP. Un objeto HttpServer contiene dos parámetros requeridos: puerto y objeto de interfaz de procesamiento de eventos. En el objeto de interfaz de procesamiento de eventos, el método de implementación específico puede ser una función de devolución de llamada simple o enrutamiento complejo, matrices de procesamiento en cadena, etc.
httpEl objeto del servidor seráTcpServeryHttpHandlerLa combinación de objetos encapsulados facilita la construcción rápida de un servidor, lo que lógicamente equivale a:
1
2
3var svr = new net.TcpServer(addr, port, new http.Handler(function(req) {
...
}));
El siguiente es el ejemplo de aplicación HttpServer más simple, que simplemente devuelve la cadena hola mundo a todas las solicitudes.
1
2
3
4
5const http = require('http');
var svr = new http.Server(8080, (req) => {
req.response.write('hello, world');
});
svr.start();
Como puede ver en el código, primero importamos el archivo integradohttpmódulo. Luego creamos un nuevo objeto HttpServer y le pasamos dos parámetros necesarios: uno es el número de puerto y el otro es el objeto de interfaz de procesamiento de eventos específico. En este ejemplo, utilizamos una función de devolución de llamada simple como interfaz de procesamiento de eventos para responder a los datos de las solicitudes HTTP. Que req.response.write('hello, world')
se utiliza para responder nuestra cadena hola mundo al cliente.
Después de completar la creación del objeto HttpServer, utilícelo svr.start()
para iniciar el servidor para que podamos recibir solicitudes HTTP de Internet a través de este servidor.
relación de herencia
Constructor
HttpServer
Constructor HttpServer, escucha en todas las direcciones locales
1
2new HttpServer(Integer port,
Handler hdlr);
Parámetros de llamada:
- port: Entero, especificadohttpPuerto de escucha del servidor
- hdlr:Handler,httpProcesador de mensajes incorporado, función de procesamiento, matriz de procesamiento en cadena, objeto de enrutamiento, consulte para más detallesmq.Handler
Constructor HTTPServer
1
2
3new HttpServer(String addr,
Integer port,
Handler hdlr);
Parámetros de llamada:
- addr: Cadena, especifiquehttpDirección de escucha del servidor, si es "", escuchará en todas las direcciones de la máquina local.
- port: Entero, especificadohttpPuerto de escucha del servidor
- hdlr:Handler,httpProcesador de mensajes incorporado, función de procesamiento, matriz de procesamiento en cadena, objeto de enrutamiento, consulte para más detallesmq.Handler
Constructor HTTPServer
1
2new HttpServer(String addr,
Handler hdlr);
Parámetros de llamada:
- addr: Cadena, especifiquehttpDirección de escucha del servidor, si es "", escuchará en todas las direcciones de la máquina local.
- hdlr:Handler,httpProcesador de mensajes incorporado, función de procesamiento, matriz de procesamiento en cadena, objeto de enrutamiento, consulte para más detallesmq.Handler
propiedades de miembros
maxHeadersCount
Entero, consulta y establece el número máximo de encabezados de solicitud, el valor predeterminado es 128
1Integer HttpServer.maxHeadersCount;
maxHeaderSize
Entero, consulta y establece la longitud máxima del encabezado de solicitud, el valor predeterminado es 8192
1Integer HttpServer.maxHeaderSize;
maxBodySize
Entero, consulta y establece el tamaño máximo del cuerpo en MB, el valor predeterminado es 64
1Integer HttpServer.maxBodySize;
enableEncoding
Booleano, interruptor de función de descompresión automática, desactivado por defecto
1Boolean HttpServer.enableEncoding;
serverName
Cadena, consulta y establece el nombre del servidor, el valor predeterminado es: fibjs/0.x.0
1String HttpServer.serverName;
socket
Socket, el servidor está escuchando actualmenteSocketobjeto
1readonly Socket HttpServer.socket;
handler
Handler, el objeto de interfaz de procesamiento de eventos actual del servidor
1Handler HttpServer.handler;
función miembro
enableCrossOrigin
Permitir solicitudes entre dominios
1HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");
Parámetros de llamada:
- allowHeaders: Cadena, especificada para ser aceptadahttpcampo de encabezado
start
Iniciar servidor actual
1HttpServer.start();
stop
Cierre el socket para cancelar el servidor en ejecución
1HttpServer.stop() async;
toString
Devuelve la representación de cadena del objeto. Generalmente, se devuelve "[Objeto nativo]". El objeto se puede volver a implementar de acuerdo con sus propias características.
1String HttpServer.toString();
Resultados de devolución:
- String, devuelve la representación de cadena del objeto
toJSON
Devuelve una representación en formato JSON del objeto, que generalmente devuelve una colección de propiedades legibles definidas por el objeto.
1Value HttpServer.toJSON(String key = "");
Parámetros de llamada:
- key: Cadena, no utilizada
Resultados de devolución:
- Value, devuelve un valor que contiene JSON serializable