电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

ASP.NET防盗链的实现

ASP.NET防盗链的实现_第1页
1/6
ASP.NET防盗链的实现_第2页
2/6
ASP.NET防盗链的实现_第3页
3/6
ASP.NET 防盗链的实现[HttpHandler] 有时我们需要防止其他网站直接引用我们系统中的图片,或下载文件链接。需要禁止盗链!在 ASP.NET 中可以方便的实现该功能! 做一个简单的盗链图片的示例,如下。新建立一个 WebApplcation。新建立一个 images 文件夹,里面二张 jpg 图片,一张 logo.jpg 正常图片,一张用于提示非法盗链的图片Error.jpg图片。 页面 default.aspx 页面很简单。就一个图片如下
这里使用HttpHandler 来处理盗链问题 新建立一个 一般处理程序 Handler1.ashx.代码及注释如下 public void ProcessRequest(HttpContext context) { //判断是否是本地网站引用图片,如果是则返回正确的图片 if (context.Request.UrlReferrer.Host == "localhost") { //设置客户端缓冲时间过期时间为 0,即立即过期 context.Response.Expires = 0; //清空服务器端为此会话开启的输出缓存 context.Response.Clear(); //设置输出文件类型 context.Response.ContentType = "image/jpg"; //将请求文件写入到输出缓存中 context.Response.WriteFile(context.Request.PhysicalPath); //将输出缓存中的信息传送到客户端 context.Response.End(); } //如果不是本地引用,则是盗链本站图片 else { //设置客户端缓冲时间过期时间为0,即立即过期 context.Response.Expires = 0; //清空服务器端为此会话开启的输出缓存 context.Response.Clear(); //设置输出文件类型 context.Response.ContentType = "image/jpg"; //将请求文件写入到输出缓存中 context.Response.WriteFile(context.Request.PhysicalApplicationPath + "images/error.jpg"); //将输出缓存中的信息传送到客户端 context.Response.End(); } } //该属性表示HTTP 请求是否可以使用当前处理 public bool IsReusable { get { return true; } } 该文件用于接管HTTP 请求JPG 格式的图片。如果是从主机 localhost 访问的,则允许。否则显示错误的图片! 到这里该文件还没有效果,需要在 Web.config 文件进行配置HttpHandler 节点 如下 来测试下 启动 图片正常显示。如果将访问地址改为 htt...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

ASP.NET防盗链的实现

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部