Houdini 19.5 hwebserver

hwebserver.registerArchiveFile function

アーカイブファイルを仮想ファイルディレクトリとして使用するようにHoudiniのウェブサーバーに命令します。

registerArchiveFile(archive_file, url_prefix, port=-1)

サーバーがurl_prefixで始まるパスのリクエストを受信した時に、そのリクエストパスの残りの部分がアーカイブファイル内部のファイルだった場合、 サーバーは、自動的にそのファイルをクライアントに供給します。 ハンドラーをサーバーのメインポート以外のポートで実行させたい場合は、オプションでportを指定することができます。

この関数は、URLハンドラーからコールするのではなく、hwebserver.runコールの前にコールしてください。

例えば、以下を実行して:

hwebserver.registerArchiveFile("/var/www/files/css.zip", "/css")

…クライアントが以下のサーバーパスをリクエストして:

/css/main.css

…main.cssファイルがcss.zipファイル内部に存在した場合、

…サーバーは、Pythonハンドラー不要で自動的にクライアントにmain.cssファイルを提供します。

Pythonハンドラーではなくて、このようにしてサーバーが静的ファイル(Houdiniデータから動的に生成されないファイルで、例えばCSSやJavaScriptファイルなど)を用意するようにサーバーのセットアップを試してください。 この仮想ファイルシステムは、ファイルシステム容量が厳しい時にのみ使用してください。 静的なディレクトリを登録するのと比べて、このメソッドを使用するとパフォーマンスが悪くなります。

Note

URLハンドラーがアーカイブパスプリフィックスよりも特定された(もっと多くのパス部分にマッチする)URLを持っている場合、サーバーは、アーカイブ検索の代わりにそのハンドラーを使用します。

例えば、上記のアーカイブディレクトリが登録されていて、クライアントが/archive/geo/foo.bgeoをリクエストし、/archive/geoに対して動的ハンドラーがある場合、 サーバーは、アーカイブファイルを検索するのではなく、そのハンドラーを使用します。

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ハンドラー内でこの例外を引き起こしてエラーを示します。