オブジェクト組み込みオブジェクト

ObjectHttpsServer

HttpsServer は、https サーバーを作成するために使用されるオブジェクトであり、HttpsServer オブジェクトを使用できます。HttpServerすべてのインターフェイス関数とプロパティ。HttpsServer オブジェクトは、openssl によって生成された証明書オブジェクトを (X509Cert型) およびキー オブジェクト (PKeyタイプ)、したがってクライアントにssl暗号化で保護されたサービス

https サーバー オブジェクトは、SslServerHttpHandlerカプセル化されたオブジェクトを組み合わせると、サーバーをすばやく構築するのに便利です。これは、論理的には次のものと同等です。

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:Handlerhttp組み込みのメッセージ プロセッサ、処理関数、連鎖処理配列、ルーティング オブジェクトについては、を参照してください。

証明書の形式は次のとおりです。

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:Handlerhttp組み込みのメッセージ プロセッサ、処理関数、連鎖処理配列、ルーティング オブジェクトについては、を参照してください。

証明書の形式は次のとおりです。

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:X509CertX509Certクライアントがサーバーを認証するために使用する証明書
  • key:PKeyPKeyクライアントとの通信に使用される秘密鍵
  • port: 整数、指定httpサーバーのリッスン ポート
  • hdlr:Handlerhttp組み込みのメッセージ プロセッサ、処理関数、連鎖処理配列、ルーティング オブジェクトについては、を参照してください。

HttpsServer コンストラクター

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

呼び出しパラメーター:

  • crt:X509CertX509Certクライアントがサーバーを認証するために使用する証明書
  • key:PKeyPKeyクライアントとの通信に使用される秘密鍵
  • addr: 文字列、指定httpサーバーはアドレスをリッスンします。「」の場合、マシンのすべてのアドレスをリッスンします
  • port: 整数、指定httpサーバーのリッスン ポート
  • hdlr:Handlerhttp組み込みのメッセージ プロセッサ、処理関数、連鎖処理配列、ルーティング オブジェクトについては、を参照してください。

メンバー属性

verification

整数、証明書検証モードを設定します。デフォルトは VERIFY_NONE です

1
Integer HttpsServer.verification;

ca

X509Cert、クライアント証明書は ca を検証します

1
readonly X509Cert HttpsServer.ca;

maxHeadersCount

リクエスト ヘッダーの最大数を整数でクエリおよび設定します。デフォルトは 128 です。

1
Integer HttpsServer.maxHeadersCount;

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 シリアル化可能な値を返します