TsgcHTTPServer › イベント

TsgcHTTPServer イベント

目的別にグループ化された処理可能なイベントと、完全なアルファベット順リストです。

ライフサイクル

名前説明
OnStartupサーバーが起動し、接続を受け付ける準備ができた後に発生します。
OnShutdownサーバーが停止し、接続が受け付けられなくなった後に発生します。
OnTCPConnectクライアントが TCP レベルで接続した後、HTTP リクエストが解析される前に発生し、接続を受け入れるか拒否できます。
OnConnectクライアント接続が確立されるたびに発生します。
OnDisconnectクライアント接続が切断されるたびに発生します。
OnErrorクライアント接続の処理中にプロトコルレベルのエラーが発生するたびに発生します。
OnExceptionクライアント接続の処理中に未処理の例外が発生するたびに発生します。
OnUnknownProtocol受信した最初のバイトが有効な HTTP リクエストに見えない場合に発生し、接続を受け入れるか拒否できます。
OnUnknownAuthentication認証が有効になっていて、サーバーが認証方式を認識できない場合に発生します。

HTTP

名前説明
OnBeforeCommandOnCommandGet または OnCommandOther の前に発生し、リクエストを検査、認可、または 401 レスポンスで即座に処理できます。
OnCommandGetHTTPサーバーがGET、POST、またはHEADリクエストを受信したときに発生し、アプリケーションがレスポンスを構築できるようにします。
OnCommandOtherHTTP サーバーが GET、POST、HEAD 以外のメソッド(PUT、DELETE、OPTIONS、PATCH など)を受信したときに発生します。
OnBeforeForwardHTTPHTTP リクエストがディスパッチされる前に発生し、別の HTTP サーバーに転送(リバースプロキシ)できます。
OnAfterForwardHTTPHTTP リクエストが転送された後に発生し、アプリケーションはアップストリームサーバーから返された結果やエラーを検査できます。
OnHTTP2BeforeAsyncRequestHTTP/2 リクエストがキューに入れられる前に発生し、アプリケーションはそれをスレッドプールで実行するか接続スレッドで実行するかを選択できます。

セッション

名前説明
OnCreateSessionHTTP サーバーが新しいセッションを作成する必要があるときに発生し、アプリケーションはカスタムの TIdHTTPSession インスタンスを提供できます。
OnSessionStartHTTP セッションが開始され、SessionList に追加されたときに発生します。
OnSessionEndHTTP セッションが明示的に、または SessionTimeout の期限切れ後にクローズされたときに発生します。
OnInvalidSessionHTTP リクエストが未知または期限切れのセッション ID を提示したときに発生し、アプリケーションは対応方法を決定できます。

HTTP アップロード

名前説明
OnHTTPUploadBeforeSaveFilemultipart/form-data アップロードから抽出されたファイルがディスクに保存される前に発生し、名前とパスをカスタマイズできます。
OnHTTPUploadAfterSaveFilemultipart/form-data アップロードから抽出されたファイルがディスクに保存された後に発生します。
OnHTTPUploadReadInputmultipart/form-data デコーダーがファイル以外の入力フィールドを読み取ったときに発生し、その値を取得できます。
OnHTTPUploadBeforeCreatePostStreamリクエストヘッダーが読み取られた後、POST ストリームが作成される前に発生し、アップロードを受け入れるか拒否できます。

信頼性

名前説明
OnSendBufferFullクライアント接続の送信キューが設定された上限に達したときに、オーバーフローポリシーが適用される前に発生します。

セキュリティ

名前説明
OnAuthentication認証が有効になっているときに発生し、アプリケーションはユーザーとパスワードを確認して接続を受け入れるか拒否できます。
OnSSLGetHandlerSSL ハンドラーが作成される前に発生し、カスタムのサーバー側ハンドラーインスタンスを提供できます。
OnSSLAfterCreateHandlerSSL ハンドラーが作成された後に発生し、そのプロパティをカスタマイズできます。
OnSSLALPNSelectALPN が有効なハンドシェイク中に発生し、アプリケーションはネゴシエートするプロトコルを選択できます。
OnSSLVerifyPeerVerifyCertificate が有効になっていて、クライアントが証明書を提示したときに発生し、受け入れるか拒否できます。

すべてのイベント(アルファベット順)

名前説明
OnAfterForwardHTTPHTTP リクエストが転送された後に発生し、アプリケーションはアップストリームサーバーから返された結果やエラーを検査できます。
OnAuthentication認証が有効になっているときに発生し、アプリケーションはユーザーとパスワードを確認して接続を受け入れるか拒否できます。
OnBeforeCommandOnCommandGet または OnCommandOther の前に発生し、リクエストを検査、認可、または 401 レスポンスで即座に処理できます。
OnBeforeForwardHTTPHTTP リクエストがディスパッチされる前に発生し、別の HTTP サーバーに転送(リバースプロキシ)できます。
OnCommandGetHTTPサーバーがGET、POST、またはHEADリクエストを受信したときに発生し、アプリケーションがレスポンスを構築できるようにします。
OnCommandOtherHTTP サーバーが GET、POST、HEAD 以外のメソッド(PUT、DELETE、OPTIONS、PATCH など)を受信したときに発生します。
OnConnectクライアント接続が確立されるたびに発生します。
OnCreateSessionHTTP サーバーが新しいセッションを作成する必要があるときに発生し、アプリケーションはカスタムの TIdHTTPSession インスタンスを提供できます。
OnDisconnectクライアント接続が切断されるたびに発生します。
OnErrorクライアント接続の処理中にプロトコルレベルのエラーが発生するたびに発生します。
OnExceptionクライアント接続の処理中に未処理の例外が発生するたびに発生します。
OnHTTP2BeforeAsyncRequestHTTP/2 リクエストがキューに入れられる前に発生し、アプリケーションはそれをスレッドプールで実行するか接続スレッドで実行するかを選択できます。
OnHTTPUploadAfterSaveFilemultipart/form-data アップロードから抽出されたファイルがディスクに保存された後に発生します。
OnHTTPUploadBeforeCreatePostStreamリクエストヘッダーが読み取られた後、POST ストリームが作成される前に発生し、アップロードを受け入れるか拒否できます。
OnHTTPUploadBeforeSaveFilemultipart/form-data アップロードから抽出されたファイルがディスクに保存される前に発生し、名前とパスをカスタマイズできます。
OnHTTPUploadReadInputmultipart/form-data デコーダーがファイル以外の入力フィールドを読み取ったときに発生し、その値を取得できます。
OnInvalidSessionHTTP リクエストが未知または期限切れのセッション ID を提示したときに発生し、アプリケーションは対応方法を決定できます。
OnSendBufferFullクライアント接続の送信キューが設定された上限に達したときに、オーバーフローポリシーが適用される前に発生します。
OnSessionEndHTTP セッションが明示的に、または SessionTimeout の期限切れ後にクローズされたときに発生します。
OnSessionStartHTTP セッションが開始され、SessionList に追加されたときに発生します。
OnShutdownサーバーが停止し、接続が受け付けられなくなった後に発生します。
OnSSLAfterCreateHandlerSSL ハンドラーが作成された後に発生し、そのプロパティをカスタマイズできます。
OnSSLALPNSelectALPN が有効なハンドシェイク中に発生し、アプリケーションはネゴシエートするプロトコルを選択できます。
OnSSLGetHandlerSSL ハンドラーが作成される前に発生し、カスタムのサーバー側ハンドラーインスタンスを提供できます。
OnSSLVerifyPeerVerifyCertificate が有効になっていて、クライアントが証明書を提示したときに発生し、受け入れるか拒否できます。
OnStartupサーバーが起動し、接続を受け付ける準備ができた後に発生します。
OnTCPConnectクライアントが TCP レベルで接続した後、HTTP リクエストが解析される前に発生し、接続を受け入れるか拒否できます。
OnUnknownAuthentication認証が有効になっていて、サーバーが認証方式を認識できない場合に発生します。
OnUnknownProtocol受信した最初のバイトが有効な HTTP リクエストに見えない場合に発生し、接続を受け入れるか拒否できます。