netcore 启用gzip压缩及缓存

复制代码
public void ConfigureServices(IServiceCollection services)
{
  ....
  // 配置gzip 与 br的压缩等级为最优
  services.Configure<BrotliCompressionProviderOptions>(options => {
      options.Level = CompressionLevel.Optimal;
  });

  services.Configure<GzipCompressionProviderOptions>(options => {
         options.Level = CompressionLevel.Optimal;
   });

   // 压缩
   services.AddResponseCompression(options => {
        options.EnableForHttps = true;// 启用HTTPS的压缩
        //options.Providers.Add<BrotliCompressionProvider>();
        options.Providers.Add<GzipCompressionProvider>();
        // 拓展一些类型
        options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[]
        {
           "text/html; charset=utf-8",
           "application/xhtml+xml",
           "application/atom+xml",
           "image/svg+xml"
            });
        }); 

     services.AddResponseCaching(); // 缓存
     //解决中文被编码, 如页面显示 title是中文,但查看源代码是&#x4F60;&#x597D;
     services.AddSingleton(HtmlEncoder.Create(UnicodeRanges.All));
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    // 使用压缩缓存中间件 应该放在最上面,否则不起作用
    app.UseResponseCompression();

    // 使用缓存中间件
    app.UseResponseCaching();
    ...
}

数字示波器

相关推荐
韩立学长1 天前
【开题答辩实录分享】以《助农信息发布系统设计与实现》为例进行选题答辩实录分享
python·web
chxii1 天前
IIS 10.0
web
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.3 天前
HAProxy 自定义错误页面配置指南
运维·负载均衡·web
曲幽3 天前
FastAPI日志实战:从踩坑到优雅配置,让你的应用会“说话”
python·logging·fastapi·web·error·log·info
暴富的Tdy4 天前
【前端开发-循序渐进转向全栈开发】
vue2·web·全栈
码界奇点4 天前
基于WebDAV协议的天翼云盘智能分享管理系统设计与实现
毕业设计·web·go语言·源代码管理
行走的鱼儿4 天前
鸿蒙HarmonyOS随笔
华为·web·harmonyos·arkts·arkdata·dev eco·hmos
曲幽4 天前
FastAPI异步多线程:从踩坑到精通,解锁高性能API的正确姿势
python·flask·fastapi·web·thread·async·httpx·asyncio
曲幽5 天前
FastAPI异常处理全解析:别让你的API在用户面前“裸奔”
python·websocket·api·fastapi·web·exception·error·httexception
Qlittleboy6 天前
物联网项目tp5怎么也获取不到请求的参数问题
物联网·php·web