次の方法で共有


MessagePack: ライブラリが @microsoft/signalr-protocol-msgpack で変更されました

@microsoft/signalr-protocol-msgpack npm パッケージでは、msgpack5 ではなく @msgpack/msgpack が参照されるようになりました。 また、必要に応じて MessagePackHubProtocol に渡すことができるオプションも変更されています。 MessagePackOptions.disableTimestampEncodingMessagePackOptions.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 に新しいプロパティが追加され、disableTimestampEncodingforceFloat64 のプロパティが削除されます。

変更理由

この変更により、資産サイズが削減され、パッケージを簡単に使用できるようになりました。カスタマイズもしやすくなっています。

以前にアプリで msgpack5 を使用していた場合は、package.json ファイルにライブラリへの直接参照を追加する必要があります。

影響を受ける API

次の API が削除されました。

  • MessagePackOptions.disableTimestampEncoding
  • MessagePackOptions.forceFloat64