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

相关推荐
codeGoogle4 小时前
自研 IM 还是选择第三方 SDK?企业开发者应该如何权衡?
前端·后端·程序员
DLYSB_7 小时前
API 网关流量洪峰与突发 CC 攻击:我用 Go 写了个“现场物理防御哨兵”,把故障响应压缩到秒级
开发语言·后端·golang·报警灯
markinmarkin7 小时前
Spring 中Bean 的作用域有哪些?
java·后端·spring
全麦面包 time展天8 小时前
瀚海拾贝(一)HTTP协议/IIS 原理及ASP.NET运行机制浅析【图解】
网络协议·http·asp.net
橙子家8 小时前
使用方法 ToDictionary() 来优化查询时间复杂度:O(N*M) -> O(1*M)【C# 基础】
后端
IT_陈寒9 小时前
我又被JavaScript的隐式类型转换坑了
前端·人工智能·后端
用户8356290780519 小时前
Python Word 转 PDF 和 PDF 转 Word 指南
后端·python
猿长大人9 小时前
C# | JSON 序列化中的多态接口处理:基于 Attribute 实现精准 $type 控制
c#·json
用户8356290780519 小时前
如何使用 Python 加密和保护 Word 文档
后端·python
他们叫我秃子9 小时前
前端开发转 Go 全栈(五):终于遇到熟人了,Go 的闭包和高阶函数原来这么像 JavaScript
前端·后端·go