我已经按照以下说明配置了我的应用程序 https://docs.microsoft.com/en-us/aspnet/core/performance/response-compression?tabs=aspnetcore2x 。
我想要默认值(Gzip、faster等),所以我只需修改 Startup.cs 使用:
Startup.cs
services.AddResponseCompression() 在里面 ConfigureServices() 和 app.UseResponseCompression() 紧接之前 app.UseMvc() 在里面 Configure() 。
services.AddResponseCompression()
ConfigureServices()
app.UseResponseCompression()
app.UseMvc()
Configure()
这似乎适用于html响应:
但对于我的静态JavaScript文件,这更令人担忧:
根据文件 application/javascript 指定为压缩的默认MIME类型。
application/javascript
。。。和应用程序。应用程序之前的UserResponseCompression()。UseMvc() 在Configure()中
JavaScript文件由静态文件中间件提供服务,这就是为什么您应该在静态文件中间件之前添加压缩中间件。以下是正确的顺序 Configure 方法:
Configure
app.UseResponseCompression(); app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); });