如果浏览器支持的话,现代的.net后端会选择Brotli。我的问题是,从我们的一个后端发出的流量中有50%是二进制数据。所以我想做的是拦截请求处理,并确保当二进制数据要发送出去时使用gzip。这可能吗?
uelo1irk1#
假设您的配置如下所示:
using Microsoft.AspNetCore.ResponseCompression; var builder = WebApplication.CreateBuilder(args); builder.Services.AddResponseCompression(options => { options.Providers.Add<BrotliCompressionProvider>(); options.Providers.Add<GzipCompressionProvider>(); options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat( new[] { "application/octet-stream" }); }); var app = builder.Build(); app.UseResponseCompression();
您的 * 客户端 * 可以通过设置Accept-Encoding
Accept-Encoding
Accept-Encoding: gzip
你也可以有Accept-Encoding: *,服务器可以使用默认的或自定义的提供者来提供特定的mime类型。
Accept-Encoding: *
1条答案
按热度按时间uelo1irk1#
假设您的配置如下所示:
您的 * 客户端 * 可以通过设置
Accept-Encoding
你也可以有
Accept-Encoding: *
,服务器可以使用默认的或自定义的提供者来提供特定的mime类型。