asp.net下结合HttpHandler实现图片防盗链

 更新时间:2010年07月02日 20:00:18   作者:  
asp.net防图片盗链HttpHandler
复制代码 代码如下:

#region IHttpHandler 成员

bool IHttpHandler.IsReusable
{
get { return true; }
}

void IHttpHandler.ProcessRequest(HttpContext context)
{
string FileName = context.Server.MapPath(context.Request.FilePath);
if (context.Request.UrlReferrer.Host == null)
{
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile("/no.jpg");
}
else
{
if (context.Request.UrlReferrer.Host.IndexOf("mydomain.com") > 0)
{
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile(FileName);
}
else
{
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile("no/jpg");
}
}
}

#endregion

<httpHandlers>
<add verb="*" path="*.jpg" type="JpgHandler, MyDll" />
</httpHandlers>

相关文章

  • 记一次EFCore类型转换错误及解决方案

    记一次EFCore类型转换错误及解决方案

    这篇文章主要介绍了记一次EFCore类型转换错误及解决方案,帮助大家更好的理解和学习使用asp.net core,感兴趣的朋友可以了解下
    2021-03-03
  • ASP.NET自定义Web服务器控件之Button控件

    ASP.NET自定义Web服务器控件之Button控件

    这篇文章主要介绍了ASP.NET自定义Web服务器控件之Button控件,详细讲述了Button控件的实现代码、前台页面的调用以及对应的事件响应代码,具有很好的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • asp.net下Cache 缓存操作类代码

    asp.net下Cache 缓存操作类代码

    asp.net Cache 缓存操作类实现代码,需要的朋友可以参考下。
    2011-03-03
  • ASP.NET中使用Ajax的方法

    ASP.NET中使用Ajax的方法

    之前在Ajax初步理解中介绍了对Ajax的初步理解,本文将介绍在ASP.NET中如何方便使用Ajax,第一种当然是使用jQuery的ajax,功能强大而且操作简单方便,第二种是使用.NET封装好的ScriptManager
    2013-10-10
  • ASP.NET实现Hadoop增删改查的示例代码

    ASP.NET实现Hadoop增删改查的示例代码

    本篇文章主要介绍了ASP.NET实现Hadoop增删改查的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Entity Framework管理并发

    Entity Framework管理并发

    这篇文章介绍了Entity Framework管理实现并发的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • .NET更新Xml中CDATA内容的方法实例

    .NET更新Xml中CDATA内容的方法实例

    这篇文章介绍了.NET更新Xml中CDATA内容的方法实例,有需要的朋友可以参考一下
    2013-07-07
  • ASP.NET配置文件Web.config用法详解

    ASP.NET配置文件Web.config用法详解

    这篇文章主要介绍了ASP.NET配置文件Web.config用法,详细解读了Web.config配置文件各个节点的含义及用法,需要的朋友可以参考下
    2014-10-10
  • 解决VS2012 Express的There was a problem sending the command to the program问题

    解决VS2012 Express的There was a problem sending the command to

    安装Visual Studio 2012 Express之后,双击打开web.config文件时经常出现“There was a problem sending the command to the program”的错误,然后VS2012 Express打开了,但web.config文件没打开,需要再次双击web.config文件才能打开。很是烦人
    2013-02-02
  • asp.net实现的MVC跨数据库多表联合动态条件查询功能示例

    asp.net实现的MVC跨数据库多表联合动态条件查询功能示例

    这篇文章主要介绍了asp.net实现的MVC跨数据库多表联合动态条件查询功能,结合实例形式较为详细分析了asp.net基于MVC架构的跨数据库多表联合查询功能实现技巧,需要的朋友可以参考下
    2017-02-02

最新评论