Почему SignalR требует добавления сжатия ответов типа «приложение/октет-поток»?

#c# #asp.net #asp.net-core #signalr #blazor

Вопрос:

В этой статье Microsoft Docs показано, как настроить SignalR в приложении Blazor. Там есть шаг, который добавляет промежуточное программное обеспечение для сжатия ответов для application/octet-stream типа MIME:

 services.AddSignalR();
services.AddControllersWithViews();
services.AddRazorPages();
services.AddResponseCompression(opts =>
{
    opts.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(
        new[] { "application/octet-stream" });
});
 

Однако можно заметить, что этот шаг пропущен в статье, в которой показано, как настроить SignalR для ASP.NET Основное приложение(с библиотекой JavaScript).

Я пытаюсь настроить SignalR для ASP.NET Основное приложение MVC, но оно находится в предварительно созданном компоненте Razor, поэтому я настраиваю его, как показано в статье Blazor. Другие части моего приложения включают загрузку и загрузку изображений и электронных таблиц, поэтому я также хотел бы знать, не помешает ли добавление вышеупомянутого сжатия ответов этим операциям.

Может ли кто-нибудь объяснить, требуется ли и почему этот шаг? Имеет ли это какое-то существенное значение? Я полагаю, что это делается для оптимизации передачи двоичных сообщений по соединению SignalR.

Ответ №1:

Может ли кто-нибудь объяснить, требуется ли и почему этот шаг? Имеет ли это какое-то существенное значение? Я полагаю, что это делается для оптимизации передачи двоичных сообщений по соединению SignalR.

Промежуточное программное обеспечение для сжатия ответов не требуется при использовании asp.net основной сигнал в Блейзоре. В этом руководстве, если вы удалите services.AddResponseCompression() и app.UseResponseCompression(); в файле Startup.cs, SignalR по-прежнему будет работать хорошо.

Для получения более подробной информации вы можете проверить промежуточное программное обеспечение для сжатия ответов, оно используется для динамического сжатия тел ответов и снижения использования пропускной способности.