【发布时间】:2018-05-16 13:11:15
【问题描述】:
我已按照所有文档在我的 .NET Core 2.0 Web API 项目中设置 ResponseCompression,但我看不到传输大小的差异。以下是使用 Postman 的前后结果:
压缩前: https://i.stack.imgur.com/jAAuy.jpg
压缩后: https://i.stack.imgur.com/HviP5.jpg
这是我在 Startup.cs 中的 ConfigureServices 方法的开始:
public void ConfigureServices(IServiceCollection services)
{
services.AddResponseCompression(options =>
{
options.Providers.Add<GzipCompressionProvider>();
});
services.Configure<GzipCompressionProviderOptions>(options =>
{
options.Level = CompressionLevel.Optimal;
});
这是我在 Startup.cs 中的配置方法:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseResponseCompression();
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
app.UseMvc();
}
这是我对 VendorController 的 Get 操作:
[HttpGet]
public IActionResult Get()
{
var stuff = new Collection<string>();
for (int i = 0; i < 100000; i++)
{
stuff.Add($"hello{i}");
}
return Ok(stuff);
}
我没有使用 IIS,这是我的 Program.cs:
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build();
}
任何帮助将不胜感激。所有文档都说这应该会给我的转移规模带来很大的不同。
【问题讨论】:
标签: c# asp.net-core-2.0 asp.net-core-webapi