ОбъектHttpServer
HttpServer — один из встроенных объектов, который используется для создания HTTP-серверов. Объект HttpServer содержит два обязательных параметра: порт и объект интерфейса обработки событий. В объекте интерфейса обработки событий конкретный метод реализации может быть простой функцией обратного вызова или сложной маршрутизацией, массивами обработки цепочки и т. д.
httpОбъект сервера будетTcpServerиHttpHandlerОбъединение инкапсулированных объектов позволяет легко и быстро построить сервер, что логически эквивалентно:
1
2
3var svr = new net.TcpServer(addr, port, new http.Handler(function(req) {
...
}));
Ниже приведен простейший пример приложения HttpServer, который просто возвращает строку hello world на все запросы.
1
2
3
4
5const http = require('http');
var svr = new http.Server(8080, (req) => {
req.response.write('hello, world');
});
svr.start();
Как видно из кода, сначала мы импортировали встроенныйhttpмодуль. Затем мы создали новый объект HttpServer и передали два необходимых параметра: один — номер порта, а другой — конкретный объект интерфейса обработки событий. В этом примере мы используем простую функцию обратного вызова в качестве интерфейса обработки событий для ответа на данные HTTP-запросов. Который req.response.write('hello, world')
используется для ответа клиенту на нашу строку hello world.
После завершения создания объекта HttpServer используйте svr.start()
для запуска сервера, чтобы мы могли получать HTTP-запросы из Интернета через этот сервер.
отношения наследства
Конструктор
HttpServer
Конструктор HttpServer, прослушивайте все локальные адреса
1
2new HttpServer(Integer port,
Handler hdlr);
Параметры звонка:
- port: указанное целое числоhttpПорт прослушивания сервера
- hdlr:Handler,httpВстроенный процессор сообщений, функция обработки, массив обработки цепочек, объект маршрутизации, подробности см.mq.Handler
Конструктор HttpServer
1
2
3new HttpServer(String addr,
Integer port,
Handler hdlr);
Параметры звонка:
- addr: Строка, укажитеhttpАдрес прослушивания сервера, если он равен «», он будет прослушивать все адреса локального компьютера.
- port: указанное целое числоhttpПорт прослушивания сервера
- hdlr:Handler,httpВстроенный процессор сообщений, функция обработки, массив обработки цепочек, объект маршрутизации, подробности см.mq.Handler
Конструктор HttpServer
1
2new HttpServer(String addr,
Handler hdlr);
Параметры звонка:
- addr: Строка, укажитеhttpАдрес прослушивания сервера, если он равен «», он будет прослушивать все адреса локального компьютера.
- hdlr:Handler,httpВстроенный процессор сообщений, функция обработки, массив обработки цепочек, объект маршрутизации, подробности см.mq.Handler
свойства члена
maxHeadersCount
Целое число, запросите и установите максимальное количество заголовков запроса, значение по умолчанию — 128.
1Integer HttpServer.maxHeadersCount;
maxHeaderSize
Целое число, запросите и установите максимальную длину заголовка запроса, значение по умолчанию — 8192.
1Integer HttpServer.maxHeaderSize;
maxBodySize
Целое число, запрос и установка максимального размера тела в МБ, значение по умолчанию — 64.
1Integer HttpServer.maxBodySize;
enableEncoding
Логическое значение, переключатель функции автоматической декомпрессии, по умолчанию отключено.
1Boolean HttpServer.enableEncoding;
serverName
Строка, запрос и установка имени сервера, значение по умолчанию: fibjs/0.x.0.
1String HttpServer.serverName;
socket
Socket, сервер в данный момент прослушиваетSocketобъект
1readonly Socket HttpServer.socket;
handler
Handler, текущий объект интерфейса обработки событий сервера
1Handler HttpServer.handler;
функция-член
enableCrossOrigin
Разрешить междоменные запросы
1HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");
Параметры звонка:
- allowHeaders: строка, указанная для принятияhttpполе заголовка
start
Запустить текущий сервер
1HttpServer.start();
stop
Закройте сокет, чтобы прервать работающий сервер.
1HttpServer.stop() async;
toString
Возвращает строковое представление объекта. Обычно возвращается «[Native Object]». Объект может быть повторно реализован в соответствии с его собственными характеристиками.
1String HttpServer.toString();
Результаты возврата:
- String, возвращает строковое представление объекта
toJSON
Возвращает представление объекта в формате JSON, обычно возвращая коллекцию читаемых свойств, определенных объектом.
1Value HttpServer.toJSON(String key = "");
Параметры звонка:
- key: Строка, не используется.
Результаты возврата:
- Value, возвращает значение, содержащее сериализуемый JSON