这是以前通过向web.config文件添加一些配置来实现的,但现在这个文件将要消失。
我期待在中间件声明中找到一些方法或属性,但我还没找到:
app.UseStaticFiles();
那么,现在将静态内容缓存为图像,脚本等的过程呢?
是否有其他中间件可以执行此操作,或者此功能是否尚未在MVC 6中实现?
我正在寻找一种方法来将缓存控制,过期等标题添加到静态内容中。
答案 0 :(得分:3)
所有关于使用AspNet Core的中间件;
将以下内容添加到Startup.cs文件中的Configure方法
app.Use(async (context, next) =>
{
context.Response.Headers.Add("Content-encoding", "gzip");
context.Response.Body = new System.IO.Compression.GZipStream(context.Response.Body,
System.IO.Compression.CompressionMode.Compress);
await next();
await context.Response.Body.FlushAsync();
});
顺便说一下,你可以将它添加到ConfigureServices方法
services.AddMvc(options =>
{
options.CacheProfiles.Add("Default",
new CacheProfile()
{
Duration = 60
});
options.CacheProfiles.Add("Never",
new CacheProfile()
{
Location = ResponseCacheLocation.None,
NoStore = true
});
});
用
装饰控件[ResponseCache(CacheProfileName = "Default")]
public class HomeController : Controller
{
...
答案 1 :(得分:0)