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();
    ...
}

数字示波器

相关推荐
中草药z1 小时前
【自动化测试】Selenium详解-WebUI自动化测试
前端·功能测试·selenium·自动化·html·web·测试
ZZHow10242 天前
JavaWeb开发_Day05
java·笔记·web
OEC小胖胖7 天前
【CSS 布局】告别繁琐计算:CSS 现代布局技巧(gap, aspect-ratio, minmax)
前端·css·web
Code季风9 天前
深入理解 Gin 框架的路由机制:从基础使用到核心原理
ide·后端·macos·go·web·xcode·gin
OEC小胖胖9 天前
第七章:数据持久化 —— `chrome.storage` 的记忆魔法
前端·chrome·浏览器·web·扩展
OEC小胖胖9 天前
第六章:玩转浏览器 —— `chrome.tabs` API 精讲与实战
前端·chrome·浏览器·web·扩展
cyber_两只龙宝9 天前
综合项目记录:自动化备份全网服务器数据平台
linux·运维·服务器·自动化·web
鹏多多.11 天前
flutter-使用AnimatedDefaultTextStyle实现文本动画
android·前端·css·flutter·ios·html5·web
OEC小胖胖11 天前
幕后英雄 —— Background Scripts (Service Worker)
开发语言·前端·javascript·浏览器·web·扩展
姜 萌@cnblogs13 天前
【实战】让AI理解用户的文化背景:开源项目Saga Reader自动翻译的技术实现
ai·web·tauri