객체 내장 객체

ObjectHttps서버

HttpsServer는 https 서버를 생성하는데 사용되는 객체로, HttpsServer 객체를 사용할 수 있습니다.HttpServer모든 인터페이스 기능 및 속성. HttpsServer 개체는 이전에 openssl을 사용하여 생성된 인증서 개체를 전달하여 생성할 수 있습니다(X509Cert유형) 및 키 객체(PKey유형), 클라이언트에게 다음을 제공합니다.ssl암호화로 보호되는 서비스

https 서버 개체는SslServer그리고HttpHandler캡슐화된 객체를 결합하면 서버를 쉽고 빠르게 구축할 수 있으며 이는 논리적으로 다음과 같습니다.

1 2 3
var svr = new net.SslServer(crt, key, addr, port, new http.Handler(function(req) { ... }));

다음은 HttpsServer를 사용하는 샘플 코드입니다.

1 2 3 4 5 6 7 8 9 10 11 12
const http = require("http"); const crypto = require("crypto"); // load cert and key const cert = crypto.loadCert("server.crt"); const key = crypto.loadPKey("server.key"); // create https server const server = new http.HttpsServer(cert, key, 8443, function(req) { resp.response.write(`Hello, Fibjs!`); }); server.start();

위의 예에서는 "server.crt" 및 "server.key"라는 인증서와 개인 키 파일을 로드한 다음 HttpsServer 개체를 사용하여 서비스를 생성하고 포트 8443에서 수신 대기하는 서비스를 시작했습니다. " https://localhost:8443/ " 을 통해 서비스에 접속하면 ,ssl암호화된 보호.

외부 액세스가 필요한 경우 인증서가 공공 신뢰 기관에서 발급되었는지 확인해야 합니다. 그렇지 않으면 클라이언트가 인증서를 확인할 수 없어 성능과 보안이 저하되고 보안 경고가 발생할 수 있습니다.

상속관계

건설자

HttpsServer

HttpsServer 생성자, 모든 로컬 주소를 수신합니다.

1 2 3
new HttpsServer(Array certs, Integer port, Handler hdlr);

호출 매개변수:

  • certs: 배열, 서버 인증서 목록
  • port: 정수, 지정됨http서버 수신 포트
  • hdlr:Handler,http내장 메시지 프로세서, 처리 기능, 체인 처리 배열, 라우팅 개체, 자세한 내용은 참조

인증서 형식은 다음과 같습니다.

1 2 3 4 5 6 7 8 9 10 11
[{ name: "fibjs.org", crt: [X509Cert object], key: [PKey object] }, { name: "*.fibjs.org", crt: [X509Cert object], key: [PKey object] } ]

HttpsServer 생성자

1 2 3 4
new HttpsServer(Array certs, String addr, Integer port, Handler hdlr);

호출 매개변수:

  • certs: 배열, 서버 인증서 목록
  • addr: 문자열, 지정http서버 수신 주소가 ""인 경우 로컬 시스템의 모든 주소를 수신합니다.
  • port: 정수, 지정됨http서버 수신 포트
  • hdlr:Handler,http내장 메시지 프로세서, 처리 기능, 체인 처리 배열, 라우팅 개체, 자세한 내용은 참조

인증서 형식은 다음과 같습니다.

1 2 3 4 5 6 7 8 9 10 11
[{ name: "fibjs.org", crt: [X509Cert object], key: [PKey object] }, { name: "*.fibjs.org", crt: [X509Cert object], key: [PKey object] } ]

HttpsServer 생성자, 모든 로컬 주소를 수신합니다.

1 2 3 4
new HttpsServer(X509Cert crt, PKey key, Integer port, Handler hdlr);

호출 매개변수:

  • crt:X509Cert,X509Cert클라이언트가 서버를 인증하는 데 사용하는 인증서
  • key:PKey,PKey클라이언트와 대화하는 데 사용되는 개인 키
  • port: 정수, 지정됨http서버 수신 포트
  • hdlr:Handler,http내장 메시지 프로세서, 처리 기능, 체인 처리 배열, 라우팅 개체, 자세한 내용은 참조

HttpsServer 생성자

1 2 3 4 5
new HttpsServer(X509Cert crt, PKey key, String addr, Integer port, Handler hdlr);

호출 매개변수:

  • crt:X509Cert,X509Cert클라이언트가 서버를 인증하는 데 사용하는 인증서
  • key:PKey,PKey클라이언트와 대화하는 데 사용되는 개인 키
  • addr: 문자열, 지정http서버 수신 주소가 ""인 경우 로컬 시스템의 모든 주소를 수신합니다.
  • port: 정수, 지정됨http서버 수신 포트
  • hdlr:Handler,http내장 메시지 프로세서, 처리 기능, 체인 처리 배열, 라우팅 개체, 자세한 내용은 참조

구성원 속성

verification

정수, 인증서 확인 모드를 설정합니다. 기본값은 VERIFY_NONE입니다.

1
Integer HttpsServer.verification;

ca

X509Cert, 클라이언트 인증서 확인 ca

1
readonly X509Cert HttpsServer.ca;

maxHeadersCount

정수, 요청 헤더의 최대 수를 쿼리하고 설정합니다. 기본값은 128입니다.

1
Integer HttpsServer.maxHeadersCount;

maxHeaderSize

정수, 쿼리 및 최대 요청 헤더 길이 설정, 기본값은 8192

1
Integer HttpsServer.maxHeaderSize;

maxBodySize

정수, 쿼리 및 최대 본문 크기(MB) 설정, 기본값은 64

1
Integer HttpsServer.maxBodySize;

enableEncoding

부울, 자동 감압 기능 스위치, 기본적으로 꺼짐

1
Boolean HttpsServer.enableEncoding;

serverName

문자열, 쿼리 및 서버 이름 설정, 기본값은 fibjs/0.x.0입니다.

1
String HttpsServer.serverName;

socket

Socket, 서버가 현재 듣고 있습니다.Socket물체

1
readonly Socket HttpsServer.socket;

handler

Handler, 서버의 현재 이벤트 처리 인터페이스 객체

1
Handler HttpsServer.handler;

멤버 함수

enableCrossOrigin

도메인 간 요청 허용

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

호출 매개변수:

  • allowHeaders: 허용되도록 지정된 문자열http헤더 필드

start

현재 서버 시작

1
HttpsServer.start();

stop

실행 중인 서버를 중단하려면 소켓을 닫으세요.

1
HttpsServer.stop() async;

toString

객체의 문자열 표현을 반환하며 일반적으로 "[Native Object]"를 반환하며 객체 자체의 특성에 따라 다시 구현될 수 있습니다.

1
String HttpsServer.toString();

결과 반환:

  • String, 객체의 문자열 표현을 반환합니다.

toJSON

객체의 JSON 형식 표현을 반환하며 일반적으로 객체에 의해 정의된 읽을 수 있는 속성 컬렉션을 반환합니다.

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

호출 매개변수:

  • key: 문자열, 사용되지 않음

결과 반환:

  • Value, 직렬화 가능한 JSON을 포함하는 값을 반환합니다.