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

相关推荐
Victor3561 小时前
MongoDB(95)如何在MongoDB中使用加密存储引擎?
后端
Victor3561 小时前
MongoDB(96)如何使用MongoDB的高级聚合功能?
后端
IT利刃出鞘2 小时前
Spring工具类--ObjectUtils的使用
java·后端·spring
2601_949816682 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
GetcharZp8 小时前
告别 jq 噩梦!这款 JSON 神器 fx 让你在终端体验“丝滑”的数据操作
后端
_Evan_Yao8 小时前
端口80之外:一个Java小白和HTTP、DNS、FTP、SSH的“隐秘”交手
网络协议·http·ssh
rockey6279 小时前
AScript函数体系详解
c#·.net·script·eval·expression·function·动态脚本
小码哥_常9 小时前
告别臃肿!Elasticsearch平替Manticore登场
后端
苍何10 小时前
万字保姆级教程:Hermes+Kimi K2.6 打造7x24h Agent军团
后端
我叫黑大帅11 小时前
为什么map查找时间复杂度是O(1)?
后端·算法·面试