Houdini 20.0 hwebserver

hwebserver.errorResponse function

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

errorResponse(request, error_message, status, use_heading):hwebserver.Response

request

URLハンドラーまたはAPI関数に渡されるRequestオブジェクト。

(この関数は、requestをチェックして、クライアントがJSONレスポンスを必要としているのかどうかを判断します。クライアントがAccept: application/json, */*ヘッダを用意していた場合、これは{"error": error_message}のJSONレスポンスを返し、error_messageにはJSONエンコード可能な値が入ります。)

error_message

ユーザに表示するエラーメッセージ。

(レスポンスがHTMLではなくJSONであることがわかっているのであれば、ここにはJSONエンコード可能な値を指定することができます。)

use_heading

レスポンスが(JSONではなく)HTMLページの場合、自動的にerror_message<h1>エレメントで閉じます。

import hou
import hwebserver


@hwebserver.urlHandler("/node/info/", is_prefix=True)
def node_info(request):
    path = request.path()
    assert path.startswith("/node/info")
    node_path = path[10:]
    node = hou.node(node_path)
    if node is None:
        return hwebserver.errorResponse(request, "Resource not found", 404)
    # ...
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を返します。

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

ウェブソケット

  • WebSocket

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

  • hwebserver.webSocket

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

APIコール

  • hwebserver.apiFunction

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

  • hwebserver.APIError

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