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

相关推荐
工程师00711 小时前
C# 继承、多态、虚方法表(VTable)原理
c#·多态·继承·虚方法表
刀法如飞12 小时前
Go数组去重的20种实现方式,AI时代解决问题的不同思路
后端·算法·go
AI人工智能+电脑小能手13 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
swipe13 小时前
别再把 AI 聊天做成纯文本:从 agui 这个前后端项目,拆解“可感知工具调用”的流式 AI UI
后端·langchain·llm
GetcharZp13 小时前
GitHub 爆火!纯 Go 编写的文件同步神器 Syncthing,凭什么成为程序员的标配?
后端
hERS EOUS13 小时前
SpringBoot 使用 spring.profiles.active 来区分不同环境配置
spring boot·后端·spring
LucianaiB13 小时前
我用飞书多维表做了一个 AI 活动推荐智能体:每天自动催我别错过截止日期!
后端
月昤昽14 小时前
autocad二次开发 3.阵列与面域
c#·二次开发·autocad二次开发
铁皮饭盒14 小时前
第2课:5分钟!用 Trae AI 生成你的第一个后端服务(Bunjs + Elysia)
前端·后端·全栈
金銀銅鐵14 小时前
[git] 浅解 git reset 命令
git·后端