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

オブジェクトHTTPサーバー

HttpServer は、HTTP サーバーの作成に使用される組み込みオブジェクトの 1 つです。 HttpServer オブジェクトには、ポートとイベント処理インターフェイス オブジェクトという 2 つの必須パラメータが含まれています。イベント処理インターフェイス オブジェクトでは、特定の実装メソッドとして、単純なコールバック関数、または複雑なルーティング、チェーン処理配列などを使用できます。

httpサーバーオブジェクトは次のようになりますTcpServerそしてHttpHandlerカプセル化されたオブジェクトを結合すると、論理的に次と同等のサーバーを簡単に迅速に構築できます。

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

以下は最も単純な HttpServer アプリケーションの例です。これは、すべてのリクエストに対して文字列 hello world を返すだけです。

1 2 3 4 5
const http = require('http'); var svr = new http.Server(8080, (req) => { req.response.write('hello, world'); }); svr.start();

コードからわかるように、最初に組み込みのhttpモジュール。次に、新しい HttpServer オブジェクトを作成し、2 つの必要なパラメータを渡しました。1 つはポート番号で、もう 1 つは特定のイベント処理インターフェイス オブジェクトです。この例では、HTTP リクエストからのデータに応答するイベント処理インターフェイスとして単純なコールバック関数を使用します。これはreq.response.write('hello, world')文字列 hello world をクライアントに応答するために使用されます。

HttpServer オブジェクトの作成が完了したら、 を使用してsvr.start()サーバーを起動し、このサーバーを通じてインターネットから HTTP リクエストを受信できるようにします。

相続関係

コンストラクタ

HttpServer

HttpServer コンストラクター、すべてのローカル アドレスをリッスンします

1 2
new HttpServer(Integer port, Handler hdlr);

呼び出しパラメータ:

  • port: 整数、指定httpサーバーリスニングポート
  • hdlr:Handlerhttp組み込みメッセージプロセッサ、処理関数、チェーン処理配列、ルーティングオブジェクト、詳細は「」を参照mq.Handler

HttpServer コンストラクター

1 2 3
new HttpServer(String addr, Integer port, Handler hdlr);

呼び出しパラメータ:

  • addr: 文字列、指定しますhttpサーバーのリスニング アドレス。「」の場合、ローカル マシンのすべてのアドレスでリスニングします。
  • port: 整数、指定httpサーバーリスニングポート
  • hdlr:Handlerhttp組み込みメッセージプロセッサ、処理関数、チェーン処理配列、ルーティングオブジェクト、詳細は「」を参照mq.Handler

HttpServer コンストラクター

1 2
new HttpServer(String addr, Handler hdlr);

呼び出しパラメータ:

  • addr: 文字列、指定しますhttpサーバーのリスニング アドレス。「」の場合、ローカル マシンのすべてのアドレスでリスニングします。
  • hdlr:Handlerhttp組み込みメッセージプロセッサ、処理関数、チェーン処理配列、ルーティングオブジェクト、詳細は「」を参照mq.Handler

メンバーのプロパティ

maxHeadersCount

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

1
Integer HttpServer.maxHeadersCount;

maxHeaderSize

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

1
Integer HttpServer.maxHeaderSize;

maxBodySize

整数。本文の最大サイズを MB 単位でクエリおよび設定します。デフォルトは 64 です。

1
Integer HttpServer.maxBodySize;

enableEncoding

ブール値、自動解凍機能スイッチ、デフォルトでオフ

1
Boolean HttpServer.enableEncoding;

serverName

サーバー名を文字列でクエリおよび設定します。デフォルトは fibjs/0.x.0 です。

1
String HttpServer.serverName;

socket

Socket、サーバーは現在リッスンしていますSocket物体

1
readonly Socket HttpServer.socket;

handler

Handler、サーバーの現在のイベント処理インターフェイス オブジェクト

1
Handler HttpServer.handler;

メンバー関数

enableCrossOrigin

クロスドメインリクエストを許可する

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

呼び出しパラメータ:

  • allowHeaders: 受け入れられるように指定された文字列httpヘッダーフィールド

start

現在のサーバーを起動します

1
HttpServer.start();

stop

ソケットを閉じて実行中のサーバーを中止します。

1
HttpServer.stop() async;

toString

オブジェクトの文字列表現を返します。通常、「[Native Object]」が返されます。オブジェクトは、独自の特性に従って再実装できます。

1
String HttpServer.toString();

返される結果:

  • String、オブジェクトの文字列表現を返します。

toJSON

オブジェクトの JSON 形式表現を返します。通常は、オブジェクトによって定義された読み取り可能なプロパティのコレクションを返します。

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

呼び出しパラメータ:

  • key: 文字列、使用されません

返される結果:

  • Value、シリアル化可能な JSON を含む値を返します