MessagePack: ライブラリが @microsoft/signalr-protocol-msgpack で変更されました
@microsoft/signalr-protocol-msgpack npm パッケージでは、msgpack5
ではなく @msgpack/msgpack
が参照されるようになりました。 また、必要に応じて MessagePackHubProtocol
に渡すことができるオプションも変更されています。 MessagePackOptions.disableTimestampEncoding
と MessagePackOptions.forceFloat64
のプロパティが削除され、いくつかの新しいオプションが追加されました。
ディスカッションについては、https://github.com/dotnet/aspnetcore/issues/30471 を参照してください。
導入されたバージョン
ASP.NET Core 6.0
以前の動作
以前のバージョンでは、ブラウザーで MessagePack ハブ プロトコルを使用するために、次の 3 つのスクリプト参照を含める必要があります。
<script src="~/lib/signalr/signalr.js"></script>
<script src="~/lib/msgpack5/msgpack5.js"></script>
<script src="~/lib/signalr/signalr-protocol-msgpack.js"></script>
新しい動作
ASP.NET Core 6 以降では、ブラウザーで MessagePack ハブ プロトコルを使用するために、次の 2 つのスクリプト参照のみが必要です。
<script src="~/lib/signalr/signalr.js"></script>
<script src="~/lib/signalr/signalr-protocol-msgpack.js"></script>
アプリで直接使用する場合は、msgpack5
パッケージではなく、@msgpack/msgpack
パッケージが node_modules ディレクトリにダウンロードされます。
最後に、MessagePackOptions
に新しいプロパティが追加され、disableTimestampEncoding
と forceFloat64
のプロパティが削除されます。
変更理由
この変更により、資産サイズが削減され、パッケージを簡単に使用できるようになりました。カスタマイズもしやすくなっています。
推奨される操作
以前にアプリで msgpack5
を使用していた場合は、package.json ファイルにライブラリへの直接参照を追加する必要があります。
影響を受ける API
次の API が削除されました。
MessagePackOptions.disableTimestampEncoding
MessagePackOptions.forceFloat64
.NET