c# - 为什么 SignalR 需要添加“application/octet-stream”类型的响应压缩?
问题描述
这篇Microsoft Docs 文章介绍了如何在 Blazor 应用中配置 SignalR。有一个步骤可以为application/octet-stream
MIME 类型添加响应压缩中间件:
services.AddSignalR();
services.AddControllersWithViews();
services.AddRazorPages();
services.AddResponseCompression(opts =>
{
opts.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(
new[] { "application/octet-stream" });
});
但是,可以注意到在展示如何为 ASP.NET Core 应用程序(使用 JavaScript 库)配置 SignalR 的文章中跳过了此步骤。
我正在尝试为 ASP.NET Core MVC 应用程序配置 SignalR,但它位于预渲染的 Razor 组件中,因此我按照 Blazor 文章中的说明进行配置。我的应用程序的其他部分涉及上传和下载图像和电子表格,所以我也想知道添加上述响应压缩是否会干扰这些操作。
有人可以解释是否以及为什么需要此步骤?它有什么显着的区别吗?我想这是为了优化 SignalR 连接上二进制消息的传输。
解决方案
推荐阅读
- node.js - Lambda Axios 发布到第二个 API 奇怪的异步行为
- reactjs - 如何在反应中显示下拉框其映射值而不是其键
- rest - 将我的 Postman 调用转换为 Dart/Flutter API 调用
- angular - 模块“AppModule”导入的意外值“AngularFireAuth”。请在删除未使用的页面时添加@NgModule 注释
- mysql - mySql 中的 Varcar(200) 与 html textarea 的 maxLength=200 属性不匹配
- reactjs - 在 react-grid-layout 中同时进行垂直和水平压缩
- javascript - 用于在鼠标悬停时修改表格单元格颜色的 Javascript - javascript 的语法错误 800A03EA
- javascript - 为什么我需要两次调用 setPageFromHash() 方法?
- android - CalendarView 显示最小日期为今天
- scala - 如何从 Source[ByteString, Any] akka 流中实现 2 个参数