TPのブログ

三日坊主がその時々のマイブームについて書いているブログなので脈略はないです

Unityでwebsocketを使うときは、websocket-sharpはお勧めしない

Unityでwebsocketに接続する必要があり、「Unity websocket」と検索すると、「websocket-sharp」というライブラリを使っている例がたくさんヒットしました。なので、それに従って websocket-sharpをダウンロード→Visual Studioでビルド→Unityにインポート して使用してみたのですが、結果から言うと時間の無駄でした。

github.com

こちらのライブラリ、こまめにメンテナンスされていて一見すると良さそうに見えるのですが、カスタムヘッダーが使えない&リポジトリの管理者が金輪際サポートする気が無いという重大な欠点があります

自分の用途では、サーバー側の要求に従ってカスタムヘッダーを付与する必要があったので、使い物になりませんでした。

github.com

こちらのissueでカスタムヘッダーの追加について議論されているのですが、管理者はあくまで「カスタムヘッダーの使用はRFC 6455の仕様に沿っていないので、今後も実装する気はない」との主張を崩さず、このissueが提起されてから8年以上経った現在でもカスタムヘッダーの付与機能は追加されていません。

Unityでwebsocketを使用するときにカスタムヘッダーを付与したい方は、代わりにこちらのライブラリが使用できます↓

github.com