Houdini 19.5 hwebserver

hwebserver.URLHandler class

汎用のHTTPハンドラー。

On this page

ビルトインのハンドラー(例えば、@urlHandlerとか@apiFunction)よりも汎用URLハンドラーが必要な場合、このURLHandlerクラスを使用します。 汎用ハンドラーを使用すれば、Houdiniのすべてにアクセス可能でありながら他のRPC(例えば、JSON RPC)をそのハンドラー上に構築することができます。

Note

URLHandlerは、ハンドラーが応答する前に他のリソースを待機する必要がない場合で最適です。 リクエストが他のリソースを待機した後に応答する必要がある場合は、代わりにhwebserver.AsyncURLHandlerを使用してください。

サンプル

以下のサンプルでは、新しいリクエストが来た時に、指定した関数をコールするハンドラーの作り方を載せています。 このクラスを使用すると、以下のサンプルを利用して同様に@urlHandlerデコレータを作成することができます。

class URLCallbackHandler(hwebserver.URLHandler):
    def __init__(self, path, function, is_prefix=False):
        URLHandler.__init__(self, path, methods=['GET','POST'], allows_partial=is_prefix)
        self._function = function

    def handle(self, request):
        if self._function is None:
            return hwebserver.errorResponse(request, "Handler doesnt have a function attached.", 500)
        return self._function(request)

メソッド

See also

hwebserver

クラス

  • hwebserver.Request

    Houdiniのウェブサーバーに送信されるリクエスト。

  • hwebserver.Response

    Houdiniのウェブサーバーから送り返されるレスポンス。

  • hwebserver.UploadedFile

    Houdiniのウェブサーバーに送信されるリクエストにアップロードされたファイル。

  • URLHandler

    汎用のHTTPハンドラー。

  • AsyncURLHandler

    汎用の非同期HTTPハンドラー。

  • WebSocket

    組み込みサーバーをWebSocketに対応させるための基本クラス。

開始と停止

  • hwebserver.run

    Houdiniのウェブサーバーを開始します。

  • hwebserver.requestShutdown

    すべてのオープンリクエストが処理された後にシャットダウンするようにHoudiniのウェブサーバーに命令します。

  • hwebserver.isInDebugMode

    Houdiniのウェブサーバーがデバッグモード(でdebug=True)で起動されていればTrueを返します。

ウェブリクエストの処理とレスポンスの返し

  • hwebserver.urlHandler

    Houdiniのウェブサーバーへのリクエストを制御する関数のデコレータ。

  • hwebserver.errorResponse

    HTTPエラーを表現したResponseオブジェクトを生成します。

  • hwebserver.notFoundResponse

    404 Not Found HTTPエラーを表現したResponseオブジェクトを生成します。

  • hwebserver.fileResponse

    ファイルの内容を送信するResponseオブジェクトを生成します。

  • hwebserver.redirect

    301 Movedまたは302 FoundのHTTPレスポンスを表現したResponseオブジェクトを生成します。

  • hwebserver.registerStaticFilesDirectory

    指定したプリフィックスにマッチしたURLに対して自動的にファイルを提供するために、指定したディレクトリをチェックするようにHoudiniのウェブサーバーに命令します。

  • hwebserver.registerOpdefPath

    指定したプリフィックスを、opdefリクエストを送信するハンドラーとして使用するようにHoudiniのウェブサーバーに命令します。

  • hwebserver.registerWSGIApp

    パスプリフィックスで使用するDjangoなどのWSGI準拠のアプリケーションを登録する際に使用する関数。

  • hwebserver.registerASGIApp

    パスプリフィックスで使用するDjangoなどのASGI準拠のアプリケーションを登録する際に使用する関数。

  • hwebserver.setSettingsForPort

    特定のポートの設定を調整します。

ウェブソケット

  • WebSocket

    組み込みサーバーをWebSocketに対応させるための基本クラス。

  • hwebserver.webSocket

    HoudiniのウェブサーバーにWebSocketクラスを登録するデコレータ。

APIコール

  • hwebserver.apiFunction

    Houdiniウェブサーバー上のAPIエンドポイント経由で関数をコールを可能にするデコレータで、JSON形式またはバイナリ形式のレスポンスを返します。

  • hwebserver.APIError

    apiFunctionハンドラー内でこの例外を引き起こしてエラーを示します。