Asp.Net 自定义设置Http缓存示例(一)
一、自定义图片输出,启用客户端的图片缓存处理
代码示例:
string path = Request.Url.LocalPath;
if (path != null)
{
path = path.ToLower();
if (path.Contains("uploadfiles") || path.Contains("ueditor/net/upload"))
{
path = Server.MapPath(path).Replace("LiuXue.Mobile", "LiuXue.Web");
//输出主站内容
if (File.Exists(path))
{
//自定义缓存处理
Response.ContentType = "image/jpeg";
Response.Headers["Cache-Control"] = "public"; //指定客户端,服务器都处理缓存
int length = path.LastIndexOf(".") - path.LastIndexOf("/") - ;
Response.Headers["Etag"] = path.Substring(path.LastIndexOf("/") + , length);
Response.Headers["Last-Modified"] = new DateTime().ToString("r");
Response.Headers["Content-Length"] = new FileInfo(path).Length.ToString();
Response.Headers["Accept-Ranges"] = "bytes"; Response.TransmitFile(path);
Response.End();
}
}
}
更多:
asp.net mvc输出自定义404等错误页面,非302跳转
Asp.Net Core获取请求上下文HttpContext
Asp.Net 自定义设置Http缓存示例(一)的更多相关文章
- Asp.Net Core 自定义设置Http缓存处理
一.使用中间件 拦截请求自定义输出文件 输出前自定义指定响应头 public class OuterImgMiddleware { public static string RootPath { ge ...
- ASP.NET自定义错误页面
ASP.NET自定义错误页面 ASP.NET 提供三种用于在出现错误时捕获和响应错误的主要方法:Page_Error 事件.Application_Error 事件以及应用程序配置文件 (Web.co ...
- 连表查询都用Left Join吧 以Windows服务方式运行.NET Core程序 HTTP和HTTPS的区别 ASP.NET SignalR介绍 asp.net—WebApi跨域 asp.net—自定义轻量级ORM C#之23中设计模式
连表查询都用Left Join吧 最近看同事的代码,SQL连表查询的时候很多时候用的是Inner Join,而我觉得对我们的业务而言,99.9%都应该使用Left Join(还有0.1%我不知道在 ...
- asp.net 自带的缓存
本文导读:在.NET运用中经常用到缓存(Cache)对象.有HttpContext.Current.Cache以及HttpRuntime.Cache,HttpRuntime.Cache是应用程序级别的 ...
- asp.net/html清理页面缓存的方法
(1) MVC BaseController: Controller内 protected override void Initialize(System.Web.Routing.RequestC ...
- ASP.NET页面不被缓存
设置ASP.NET页面不被缓存分类:ASP.NET (3531) (1) /// <summary> /// 设置页面不被缓存 /// </summa ...
- ASP.NET Core中的缓存[1]:如何在一个ASP.NET Core应用中使用缓存
.NET Core针对缓存提供了很好的支持 ,我们不仅可以选择将数据缓存在应用进程自身的内存中,还可以采用分布式的形式将缓存数据存储在一个“中心数据库”中.对于分布式缓存,.NET Core提供了针对 ...
- asp.net mvc5中使用缓存依赖SqlCacheDependency
缓存是用来提高应用性能,降低服务器压力.适用于数据不易变,数据易通用的情景, 对于动态查询数据,例如数据分析,最好放弃使用缓存.使用缓存最麻烦的就是保持源数据和缓存的中的数据一致. 缓存(Cache) ...
- 初遇 Asp.net MVC 数据库依赖缓存那些事儿
问题背景: 最近做一个非常简单的功能,就是使用ajax请求的方式从服务端请求一段下拉表的数据. 以前也有做过这个功能,只不过这次做这个功能的时候冒出了一个想法: 我请求的这段数据它是一段相对比较固定的 ...
随机推荐
- 批处理命令调用WINRAR对文件进行压缩
命令: winrar a 参数 压缩后的文件 压缩源文件 如压缩apk文件,代码如下 echo apk文件不能直接下载,所以压缩apk成rar来下载 d: cd D:\Program Files\W ...
- Flink在流处理上常见的Source和sink操作
flink在流处理上的source和在批处理上的source基本一致.大致有4大类 1.基于本地集合的source(Collection-based-source) 2.基于文件的source(Fil ...
- .net core cookie登录和session的 DataProtectionProvider 加入 redis
string redisConnectionString = Configuration.GetSection("Storage:Redis").GetValue<strin ...
- P1182 数列分段`Section II` P1316 丢瓶盖 二分答案
题目描述 对于给定的一个长度为N的正整数数列A-iA−i,现要将其分成M(M≤N)M(M≤N)段,并要求每段连续,且每段和的最大值最小. 关于最大值最小: 例如一数列4 2 4 5 142451要分成 ...
- 006 numpy常用函数
属于Numpy的函数. 一:通用函数 1.说明 是一种对ndarray中的数据执行元素级运算的函数. 2.一元函数 3.二元函数 二:矢量计算 1.numpy.where 主要有两种用法 np.whe ...
- STL容器及泛型算法
一.顺序容器 1.容器的选择 (1) 随机访问,选vector ,deque (2) 在中间插入或者删除元素,选list (3) 在头尾插入或删除元素 , 选deque 2.list的成员函数 (1) ...
- pacman 命令
安装 pacman -S 删除 pacman -R 移除已安装不需要软件包 pacman -Rs 删除一个包,所有依赖 pacman -Rsc 升级包 pacman -Syu 查询包数据库 ...
- FTP传输协议的应用详解
FTP的目标:1)促进程序.数据文件按的共享;2)鼓励使用远程计算机;3)使用户不必面对不同主机上不同文件系统的差异;4)对数据进行高效可靠的传输FTP的作用:就是让用户连接上一个远程计算机,察看远程 ...
- python系统性能模块笔记
内存信息psutil.cpu_times() 使用cpu_times方法获取cpu完整信息,需要显示所有逻辑cpu信息(指定变量percpu=True)psutil.cpu_ti ...
- SpringBoot拦截器
在实际开发中,总存在着这样的场景,比如拦截请求的ip地址,或者在所有的请求都返回相同的数据,如果每一个方法都写出相同数据固然可以实现,但是随着项目的变大,重复的代码会越来越多,所以在这种情况我们可以用 ...