在Asp.Net Core中启用Http响应压缩

无论是开发网站,还是开发Api。很多时候为了节约网络流量我们需要对请求金星压缩处理以减少消息传递过程中的资源消耗,并且多数情况有利于应用发挥更好的性能(响应压缩在服务端处理,使用服务器资源)。

在Asp.Net Core中启用Http响应压缩的方式如下:

1.首先添加和配置压缩服务

cs 复制代码
            //添加GZip压缩服务
            services.Configure<GzipCompressionProviderOptions>(opt =>
            {
                opt.Level = System.IO.Compression.CompressionLevel.Optimal;
            })
            //添加Br压缩服务
            .Configure<BrotliCompressionProviderOptions>(opt =>
            {
                opt.Level = System.IO.Compression.CompressionLevel.Optimal;
            })
            //配置响应压缩
            .AddResponseCompression(opt =>
            {
                opt.EnableForHttps = true;//启用支持Https
                opt.Providers.Add<GzipCompressionProvider>();
                opt.Providers.Add<BrotliCompressionProvider>();
                opt.MimeTypes = ResponseCompressionDefaults.MimeTypes;//设置压缩响应的默认MIME类型
            });

2.启用响应压缩中间件

cs 复制代码
app.UseResponseCompression();

这样就大功告成了,可以去发起请求查看一下了,使用Postman验证下。

Http请求响应头中存在 Content-Encoding: gzip 则表示压缩成功。

相关推荐
步步为营DotNet8 小时前
借助 Microsoft.Extensions.AI 与 ASP.NET Core 10 实现智能 Web 应用故障预测
人工智能·microsoft·asp.net
mCell9 小时前
你以为短链接只是 Hash + 301/302?
后端·算法·架构
咖啡八杯9 小时前
GoF设计模式——迭代器模式
java·后端·设计模式·迭代器模式
冰可乐配10 小时前
OpenClaw.NET .NET 原生插件开发完全指南:以 Mempalace 插件为范例
.net
财财源源10 小时前
.NET 程序保护实战系列01-流水线架构与保护引擎总览
架构·.net
牧濑红莉10 小时前
自定义 Visual Studio 的界面外观
.net
贾斯汀frank11 小时前
C# 15 类型系统改进:Union Types
开发语言·windows·c#
IT_陈寒13 小时前
SpringBoot自动配置不是你以为的那样的智能
前端·人工智能·后端
时代的狂13 小时前
如何理解 C# 的 async 和 await
c#·.netcore·async·await
程序员张314 小时前
SpringBoot集成BCrypt密码加密库
java·spring boot·后端