在用IHttpHandler拦截响应时,如果我设定没有打开方式的扩展名,比如"*.jpc" ,就会被拦截,IHttpHandler中断点响应;一模一样的设置,如果是有打开方式的文件,比如“*.JPG”,那IHttpHandler类根本不会响应,IIS会直接放过,网页就会直接把图显示出来,应该怎么设置才会让IIS对它进行拦截?

解决方案 »

  1.   

    需要在IIS上首先设置,否则它不会交给asp.net的。
      

  2.   


    我就是问怎么设置啊,我菜鸟知道的设置就是在“应用程序映射”里面添加扩展名但这个方法乱七八糟扩展名是可以的,比如“*.11c“,图片就不行,我想截获“.jpg“,结果直接放过了,根本不发给.net
      

  3.   


    我就是问怎么设置啊,我菜鸟知道的设置就是在“应用程序映射”里面添加扩展名但这个方法乱七八糟扩展名是可以的,比如“*.11c“,图片就不行,我想截获“.jpg“,结果直接放过了,根本不发给.net
      

  4.   

    webconfig中加入 <httpHandlers>
    <add verb="GET,POST" path="*.jpg" type="处理类名"/>
    </httpModules>
    然后在iis里映射一下.jpg就可以了
      

  5.   

    一个简单的方法 很多人都在用 .JPG 或者其他的图片 你都用  原文件名+.aspx 来弄 就是 <img src="aaa.aspx" /> 然后再自定义处理中截取文件名就行了
      

  6.   

    补充下上面的 最好用 <img src="bbb/aaa.aspx" />给文件名前面加一个并不存在文件夹名称 然后再配置文件里截取就行了
      

  7.   

    晕死了,LS几位没懂我的意思,就拿4L的常规方法来说webconfig中加入 <httpHandlers> 
    <add verb="GET,POST" path="*.jpg" type="处理类名"/> 
    </httpHandlers> 
    然后在iis里映射一下.jpg就可以了
    -----------------------------------------------------你们可以试着在处理类中加个断点,就会发现如果path是“.jpg”,handler根本不会截取,方法都根本不会响应,如果常规就能解决,我何必开个贴问。
      

  8.   

    1.配置文件 
    2.iis 在IIS 对ISAPI进行设置。
    应该还记得在Part.1中如何在IIS中设置ISAPI来进行文件与处理程序映射:1.打开IIS,选择本范例所用的站点,右键,选择“属性”。
    2.选择“主目录”选项卡,点击“配置...”按钮。
    3.点击“添加”,设置“可执行文件”为“C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll”,设置“扩展名”为“.jpg”,点“确定”。
      

  9.   

    我刚刚试了下,完全可以拦截
    1.我在IIS配置中增加了*.jpg的处理(要重新启动IIS服务才能生效)
    2.web.config 增加了<add path="*.jpg" ....>
    3.实现IHttpHandler接口 ......
     if (path.ToLower().EndsWith(".jpg"))
       {
          context.Response.Write("jpg is loaded!");
       }
      

  10.   

    具体的在IIS中配置楼主可以去网上找资料的。
      

  11.   

    <img src="bbb/aaa.aspx" />给文件名前面加一个并不存在文件夹名称 
    webconfig中加入 <httpHandlers> 
    <add verb="GET,POST" path=“bbb/*.aspx" type="处理类名"/> 
    </httpHandlers> 
    这次写的够详细了吧,这个方法很多大网站都在用 新浪就在用 不信你可以截新浪注册页面源码来看看
    如果你还看不懂,那我就没治了
      

  12.   

    至于hander里面的源代码,对不起自己去开发吧 也只能说到这里
    不过可以给你提示,获取request中的url后截取"*"这段字符串后在你的images文件夹中得到真实的图片
    然后response出去就行了
      

  13.   


    我懂你的意思,谢谢了,你说的方法我也用过,其实是我表述不太清楚
    其实我是想问为什么“.jpg“的扩展名截取不了,看9L说的,可能是我机器的问题,我这边很奇怪,什么文件名都能截取,就是图片扩展名不行,我还以为是IIS针对图片有什么特别设置,我检查看看是不是乱七八糟插件装多了
      

  14.   

    这个就不明白了 如果你的iis配置没出问题的话 我想可能是系统有问题吧 不过这些都是小问题 只要能解决就好 何必纠结呢