作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我刚刚将我所有的 .net 核心包升级到 asp.net 核心 1.1。同时我想我会实现新发布的响应压缩中间件。但是,当我查看浏览器开发工具(网络流量)时,我可以看到无论是否使用压缩,响应的大小都没有什么不同。此外,没有“Content-Encoding”类型的响应 header 指示发生了压缩。
为了完成这项工作,我还应该在这里做些什么吗?
我的代码如下:
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddMvc(options => {
options.CacheProfiles.Add("Never",
new CacheProfile()
{
Location = ResponseCacheLocation.None,
NoStore = true,
Duration = 0
});
});
services.AddResponseCompression();
和:
public void Configure(IApplicationBuilder appBuilder)
{
appBuilder.UseResponseCompression();
appBuilder.UseMvc();
最佳答案
我认为您需要指定压缩提供程序。试试这个:
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
});
当我这样做时,我看到之前 89kb 的响应变为 2kb,并且内容类型和编码设置为预期值。
关于c# - .Net core 1.1 UseResponseCompression 没有压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40758886/
我正在尝试使用非常简单的 Asp.Net Core 3.1 应用程序启用响应压缩。我当前的代码: public void ConfigureServices(IServiceCollectio
我刚刚将我所有的 .net 核心包升级到 asp.net 核心 1.1。同时我想我会实现新发布的响应压缩中间件。但是,当我查看浏览器开发工具(网络流量)时,我可以看到无论是否使用压缩,响应的大小都没有
我是一名优秀的程序员,十分优秀!