private void Handle(NancyContext context) { if (_cacheableSpecification.IsCacheable(context)) { context.Response.Headers.EnableCache(); } else { context.Response.Headers.DisableCache(); } }
private Response Handle(NancyContext context) { if (_cacheableSpecification.IsCacheable(context) && context.Request.Headers.IfModifiedSince.HasValue) { var response = new Response { ContentType = MimeTypes.GetMimeType(context.Request.Path), StatusCode = HttpStatusCode.NotModified }; response.Headers.EnableCache(); return(response); } return(null); }
public async Task InvokeAsync(HttpContext context) { if (context.Request.Method != "OPTIONS") { if (_cacheableSpecification.IsCacheable(context.Request)) { context.Response.Headers.EnableCache(); } else { context.Response.Headers.DisableCache(); } } await _next(context); }
private void Handle(NancyContext context) { if (context.Request.Method == "OPTIONS") { return; } if (_cacheableSpecification.IsCacheable(context)) { context.Response.Headers.EnableCache(); } else { context.Response.Headers.DisableCache(); } }
public async Task InvokeAsync(HttpContext context) { if (_cacheableSpecification.IsCacheable(context) && context.Request.Headers["IfModifiedSince"].Any()) { context.Response.StatusCode = 304; context.Response.Headers.EnableCache(); if (!_mimeTypeProvider.TryGetContentType(context.Request.Path.ToString(), out var mimeType)) { mimeType = "application/octet-stream"; } context.Response.ContentType = mimeType; return; } await _next(context); }