Objeto incorporado

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 3
var 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 5
const 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 2
new 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 3
new 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 2
new 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

1
Integer HttpServer.maxHeadersCount;

maxHeaderSize

Entero, consulta y establece la longitud máxima del encabezado de solicitud, el valor predeterminado es 8192

1
Integer HttpServer.maxHeaderSize;

maxBodySize

Entero, consulta y establece el tamaño máximo del cuerpo en MB, el valor predeterminado es 64

1
Integer HttpServer.maxBodySize;

enableEncoding

Booleano, interruptor de función de descompresión automática, desactivado por defecto

1
Boolean HttpServer.enableEncoding;

serverName

Cadena, consulta y establece el nombre del servidor, el valor predeterminado es: fibjs/0.x.0

1
String HttpServer.serverName;

socket

Socket, el servidor está escuchando actualmenteSocketobjeto

1
readonly Socket HttpServer.socket;

handler

Handler, el objeto de interfaz de procesamiento de eventos actual del servidor

1
Handler HttpServer.handler;

función miembro

enableCrossOrigin

Permitir solicitudes entre dominios

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

Parámetros de llamada:

  • allowHeaders: Cadena, especificada para ser aceptadahttpcampo de encabezado

start

Iniciar servidor actual

1
HttpServer.start();

stop

Cierre el socket para cancelar el servidor en ejecución

1
HttpServer.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.

1
String 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.

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

Parámetros de llamada:

  • key: Cadena, no utilizada

Resultados de devolución:

  • Value, devuelve un valor que contiene JSON serializable