UE4: UnrealWebServer Plugin が 1.4+ のバージョンアップで URL ハンドラーの path ワイルドカードと接続情報からの path の取得に対応
概要
プラグインのバージョン情報の定義は 1.4 のままですが、 UnrealWebServer が更新され、新機能が追加されました。今回追加された新機能は以前にバグレポートとパッチをなかのひとへ送った際に「ついでに将来的にこんな機能にも対応してくれたら嬉しいな😃」と相談していたもので、私の用途ではこれまでのアップデートも含め、 UnrealWebServer の実用性が必要十分に達しました。
今回追加された機能
Add URIHandler
のパラメーターPath
に*
によるワイルドカードを設定可能になった。Connection
に対するメソッドGet Uri Path
が追加されリクエストされたパスを接続情報から取得可能になった。
それでどんな事ができるようになったのか
今回の「URLハンドラーのパスのワイルドカード対応」と「接続情報からのパス取得」、それと以前の更新で追加された「リクエストのRAWボディー取得」と「レスポンスへのRAW書き出し」を組み合わせると、ファイルサーバーをエミュレートする事もできます。例えば、 JSON-RPC-2.0 で API を提供するアプリでもファイル単位のバイナリーを受け取ったり、提供したり、そんなような事を簡単に実装したいニーズがあるときに、 UWS を使えば少々のコストで簡単にそんなような API サブシステムを実装できるようになりました。
DELETE
などもハンドラーとしては扱えるので、 いわゆる REST API 的な実装もかんたんに対応できるようになりました。