在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 则表示压缩成功。

相关推荐
bugcome_com12 小时前
bugcome —— 个人独立开发 6 年商业计划书
c#
Penge66613 小时前
ES + HDFS 存储架构:ES 做索引,HDFS 存数据
后端
Anastasiozzzz13 小时前
深入浅出:理解控制反转 (IoC) 与 Spring 的核心实现
java·后端·spring
专注VB编程开发20年14 小时前
流式解压 + 分块处理 + 增量安装
.net
无心水14 小时前
【任务调度:数据库锁 + 线程池实战】1、多节点抢任务?SELECT FOR UPDATE SKIP LOCKED 才是真正的无锁调度神器
人工智能·分布式·后端·微服务·架构
大黄评测15 小时前
Spring Boot 集成 Nacos 完全指南:从配置中心到服务发现一站式实战
后端
大鹏198815 小时前
Java Swing 界面美化与 JPanel 优化完全指南:从复古到现代的视觉革命
后端
大尚来也15 小时前
.NET 10 Minimal APIs 主要应用场景全景指南:从原型到企业级生产
后端
大黄评测15 小时前
.NET 10 & C# 14 新特性详解:扩展成员 (Extension Members) 全面指南
后端
苏渡苇16 小时前
轻量化AI落地:Java + Spring Boot 实现设备异常预判
java·人工智能·spring boot·后端·网络协议·tcp/ip·spring