压缩可以大大的降低我们服务器的响应速度,从而提高我们网页的加载速度,同时节省一定的带宽。分享一个开发小程序接口压缩过程中遇到部分机型不支持压缩的解决方案。
使用方式
在ASP.NET 6中使用响应压缩的方式比较简单。
首先,在Program.cs中添加builder.Services.AddResponseCompression注入响应压缩相关的设置,比如使用的压缩类型、压缩级别、压缩目标类型等。
其次,在Program.cs添加app.UseResponseCompression拦截请求判断是否需要压缩,大致使用方式如下:
builder.Services.AddResponseCompression(options =>
{
options.Providers.Add<BrotliCompressionProvider>();
options.Providers.Add<GzipCompressionProvider>();
//针对指定的MimeType来使用压缩策略
options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[] {
"application/json" });
options.EnableForHttps = true;
});
//针对不同的压缩类型,设置对应的压缩级别
builder.Services.Configure<BrotliCompressionProviderOptions>(options =>
{
//使用最优的方式进行压缩,即使花费的时间较长
options.Level = CompressionLevel.Optimal;