C# .Net核心1.1用户响应压缩是';t压缩
我刚刚将所有.net core软件包升级到asp.net core 1.1。同时,我认为我应该实现新发布的响应压缩中间件。但是,当我查看浏览器开发工具(网络流量)时,我可以看到无论是否使用压缩,响应的大小都没有差别。此外,没有“Content Encoding”类型的响应头指示发生了压缩 我还应该在这里做些什么来完成这项工作吗 我的代码如下:C# .Net核心1.1用户响应压缩是';t压缩,c#,asp.net-core-mvc,.net-core,C#,Asp.net Core Mvc,.net Core,我刚刚将所有.net core软件包升级到asp.net core 1.1。同时,我认为我应该实现新发布的响应压缩中间件。但是,当我查看浏览器开发工具(网络流量)时,我可以看到无论是否使用压缩,响应的大小都没有差别。此外,没有“Content Encoding”类型的响应头指示发生了压缩 我还应该在这里做些什么来完成这项工作吗 我的代码如下: public IServiceProvider ConfigureServices(IServiceCollection services)
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddMvc(options => {
options.CacheProfiles.Add("Never",
new CacheProfile()
{
Location = ResponseCacheLocation.None,
NoStore = true,
Duration = 0
});
});
services.AddResponseCompression();
以及:
我认为您需要指定压缩提供程序。试试这个:
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
});
services.AddResponseCompression(选项=>
{
options.Providers.Add();
});
当我这样做时,我看到一个以前为89kb的响应转到2kb,并且内容类型和编码被设置为预期值。我会试试。请注意HTTPS将不起作用,您还必须添加
选项。EnableForHttps=true代码>@JasonLeung你应该把它作为答案发布!它解决了我的问题,我会投赞成票。
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
});