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

数字示波器

相关推荐
ShineWinsu8 小时前
对于JavaScript:操作元素的解析
开发语言·前端·javascript·面试·web·dom·元素
ShineWinsu2 天前
对于JavaScript:JavaScript基础语法的解析
开发语言·前端·javascript·面试·web·基础语法·循环
alwaysrun3 天前
Web之wasm-pack详解
前端·rust·web·wasm
misty youth3 天前
前端知识速查
前端·react.js·web
ShineWinsu4 天前
对于CSS:弹性布局(Flexbox)的解析
前端·css·面试·浏览器·web·网页·弹性布局
voipmaker4 天前
选煤厂智能化:UWB 人员定位系统 WebAPI 对接融合通信平台实战
物联网·实时互动·json·音视频·实时音视频·web·视频
梦帮科技5 天前
Web 漏洞攻防深度:WAF 规则逃逸技术(畸形分块传输、双重编码)与对抗加固
linux·前端·网络安全·ssl·web
ShineWinsu6 天前
对于CSS:选择器的解析
前端·css·面试·html·web·选择器·网页
cui_ruicheng7 天前
FastAPI 应用开发(五)——SQLAlchemy ORM、APIRouter 与 Alembic 数据库迁移
python·fastapi·web
代码什么用8 天前
Java Web 21-22
java·开发语言·web