Share via


要求の処理

要求の処理には、次の 4 つの手順が含まれます。

  • 要求の受信
  • 要求の処理
  • 応答の送信
  • 処理できない要求の取り消し

プロセス要求ループを示す図。

要求の受信

HTTP Server API は、解析された受信要求を格納するための要求構造を提供します。 この構造体はアプリケーションによって割り当てられ、受信要求の受信時に初期化されます。 アプリケーションは HttpReceiveHttpRequest 関数を呼び出して要求を受信します。 要求バッファーが小さすぎて要求を受信できない場合、アプリケーションはバッファー サイズを大きくし、 HttpReceiveHttpRequest をもう一度呼び出して要求全体を受信できます。

要求に受信するエンティティ本文データが含まれている場合、アプリケーションは HttpReceiveHttpRequest の 呼び出し中に pRequestBuffer パラメーターで返された要求 ID を使用して HttpReceiveRequestEntityBody を呼び出します。

要求の処理

アプリケーションは、要求のアプリケーション固有の処理を実行し、応答を作成します。 HTTP Server API では、このプロセスにタイムアウトは発生しません。

応答の送信

アプリケーションは、要求の処理と応答の作成が完了すると、 HttpSendHttpResponse 関数を呼び出して応答を送信します。 応答に送信するエンティティ本文データが含まれている場合、アプリケーションは HttpSendResponseEntityBody も呼び出します。

要求の取り消し

アプリケーションは HttpReceiveHttpRequest の呼び出しから要求 ID を受け取った後、 HttpCancelHttpRequest を呼び出すことによっていつでも要求を取り消すことができます。