객체Http서버
HttpServer는 HTTP 서버를 만드는 데 사용되는 내장 개체 중 하나입니다. HttpServer 개체에는 포트 및 이벤트 처리 인터페이스 개체라는 두 가지 필수 매개 변수가 포함되어 있습니다. 이벤트 처리 인터페이스 개체에서 구체적인 구현 방법은 간단한 콜백 함수일 수도 있고 복잡한 라우팅, 체인 처리 배열 등일 수도 있습니다.
http서버 개체는 다음과 같습니다.TcpServer그리고HttpHandler캡슐화된 객체를 결합하면 서버를 쉽고 빠르게 구축할 수 있으며 이는 논리적으로 다음과 같습니다.
1
2
3var svr = new net.TcpServer(addr, port, new http.Handler(function(req) {
...
}));
다음은 모든 요청에 대해 단순히 hello world 문자열을 반환하는 가장 간단한 HttpServer 애플리케이션 예제입니다.
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
정수, 쿼리 및 최대 본문 크기(MB) 설정, 기본값은 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을 포함하는 값을 반환합니다.