gpt4 book ai didi

c# - .net 核心中的 GZIP 不起作用

转载 作者:IT王子 更新时间:2023-10-29 04:43:29 24 4
gpt4 key购买 nike

我正在尝试将 Gzip 中间件添加到我的 ASP.net 核心应用程序中。

我添加了以下包:

"Microsoft.AspNetCore.ResponseCompression": "1.0.0"

在我的配置服务方法的 startup.cs 中,我有以下内容:

public void ConfigureServices(IServiceCollection services)
{
services.Configure<GzipCompressionProviderOptions>(options => options.Level = CompressionLevel.Fastest);
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
});

services.AddMvc();
}

在我的 Configure 方法中,我有以下内容:

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();

app.UseResponseCompression();
app.UseMvc();
}

但是,当我尝试加载一个页面时,它并没有通过 Gzip 压缩。我同时使用了字符串响应和输出 View 。 chrome 中的响应 header 如下所示:

enter image description here

我在 visual studio 中开发的 Windows 机器上。运行应用程序时,我尝试仅从 Visual Studio(通过 F5)运行,并从命令行使用“dotnet run”命令。既不输出 GZip 压缩。

最佳答案

在 .net core 2 中启用 GZIP。*
1.使用 Install-Package Microsoft.AspNetCore.ResponseCompression 命令或 nuget 包管理器安装 Microsoft.AspNetCore.ResponseCompression
2.将以下代码添加到Startup.cs

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{

app.UseResponseCompression();
app.UseMvc();

}

public void ConfigureServices(IServiceCollection services)
{

// Configure Compression level
services.Configure<GzipCompressionProviderOptions>(options => options.Level = CompressionLevel.Fastest);

// Add Response compression services
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
options.EnableForHttps = true;
});

}

关于c# - .net 核心中的 GZIP 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41732254/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com