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

相关推荐
杨运交2 分钟前
[007][租户模块]基于 TransmittableThreadLocal 与 TaskDecorator 的租户上下文传递设计
后端
Gh0st_Lx3 分钟前
【6】为什么有了 HTTP/1.1 ,还要 HTTP/2 和 HTTP/3
网络协议·http·php
huzhongqiang7 分钟前
Python全站链接爬取工具优化:支持过滤和断点续爬
后端·爬虫
神奇小汤圆8 分钟前
SpringBoot 4 最被低估的新特性:Spring Data AOT
后端
杨运交9 分钟前
[004][缓存模块]Caffeine缓存自定义:构建灵活的Spring Boot缓存管理器
后端
刀法如飞14 分钟前
一款开箱即用的Flask 3.0 MVC工程脚手架,面向AI开发
后端·python·flask
神奇小汤圆29 分钟前
美团Java一面:布隆过滤器有什么缺点?
后端
Zfox_31 分钟前
【LangChain】核心组件(上)
后端·langchain·ai编程
唐青枫33 分钟前
内存为什么越来越高?C#.NET GC 详解:分代回收、LOH、终结器与性能优化实战
c#·.net