IHttpHandlerFactory的使用测试

王朝asp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

仿照msdn写了一个接管http请求的类,对于aspx文件,可以正常实现功能,但是对于图片文件,比如

*.jpg却不行,找了一些资料也没搞清楚,cs文件和config文件如下:

搞定了,在IIS中指定对.jpg文件的映射

[D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll]

HandlerFactory.cs

using System;

using System.Web;

namespace Handlers

{

class HandlerFactory : IHttpHandlerFactory

{

public IHttpHandler GetHandler(HttpContext context, string requestType, String url, String pathTranslated)

{

IHttpHandler handlerToReturn;

if("get" == context.Request.RequestType.ToLower())

{

handlerToReturn = new HandlerImg();

}

else if("post" == context.Request.RequestType.ToLower())

{

handlerToReturn = new HandlerImg();

}

else

{

handlerToReturn = null;

}

return handlerToReturn;

}

public void ReleaseHandler(IHttpHandler handler)

{

}

public bool IsReusable

{

get

{

return false;

}

}

}

public class HandlerImg : IHttpHandler

{

public virtual void ProcessRequest(HttpContext context)

{

context.Response.Redirect("http://hr.benq.com");

}

public virtual bool IsReusable

{

get { return true; }

}

}

}

web.config

<httpHandlers>

<add verb="*" path="test1.aspx" type="Handlers.HandlerFactory,Handlers" />

<add verb="*" path="test2.aspx" type="Handlers.HandlerFactory,Handlers" />

<add verb="*" path="*.jpg" type="Handlers.HandlerFactory,Handlers" />

</httpHandlers>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
>>返回首页<<
© 2005- 王朝网络 版权所有