Zmieniono bibliotekę MessagePack w programie @microsoft/signalr-protocol-msgpack
Pakiet npm @microsoft/signalr-protocol-msgpack teraz odwołuje się @msgpack/msgpack
zamiast msgpack5
. Ponadto dostępne opcje, które można opcjonalnie przekazać do elementu MessagePackHubProtocol
, uległy zmianie. Właściwości MessagePackOptions.disableTimestampEncoding
i MessagePackOptions.forceFloat64
zostały usunięte, a niektóre nowe opcje zostały dodane.
Aby zapoznać się z dyskusją, zobacz https://github.com/dotnet/aspnetcore/issues/30471.
Wprowadzona wersja
ASP.NET Core 6.0
Stare zachowanie
W poprzednich wersjach należy uwzględnić trzy odwołania do skryptu, aby użyć protokołu Centrum MessagePack w przeglądarce:
<script src="~/lib/signalr/signalr.js"></script>
<script src="~/lib/msgpack5/msgpack5.js"></script>
<script src="~/lib/signalr/signalr-protocol-msgpack.js"></script>
Nowe zachowanie
Począwszy od ASP.NET Core 6, potrzebne są tylko dwa odwołania do skryptów, aby używać protokołu MessagePack Hub w przeglądarce:
<script src="~/lib/signalr/signalr.js"></script>
<script src="~/lib/signalr/signalr-protocol-msgpack.js"></script>
msgpack5
Zamiast pakietu pakiet jest pobierany do katalogu node_modules, @msgpack/msgpack
jeśli chcesz go używać bezpośrednio w aplikacji.
MessagePackOptions
Na koniec ma nowe, dodatkowe właściwości oraz disableTimestampEncoding
właściwości i forceFloat64
zostaną usunięte.
Przyczyna wprowadzenia zmiany
Ta zmiana została wprowadzona w celu zmniejszenia rozmiaru zasobu, uproszczenia korzystania z pakietu i dodania większej możliwości dostosowywania.
Zalecana akcja
Jeśli wcześniej używano msgpack5
w aplikacji, musisz dodać bezpośrednie odwołanie do biblioteki w pliku package.json .
Dotyczy interfejsów API
Usunięto następujące interfejsy API:
MessagePackOptions.disableTimestampEncoding
MessagePackOptions.forceFloat64