我在IIS 7中托管了一个wcf服务。我很好奇是否可以创建我自己的.svc HttpHandler映射和类来处理服务请求。为IIS中托管的WCF服务创建自定义.svc处理程序
例如,如果我是拦截到,随着“.foo”此时的延伸端文件的任何请求,我可以添加这对我的web.config
<handlers>
<add name="*.foo_**" path="*.foo" verb="*" type="MyServer.FooHttpHandler" />
</handlers>
而且我可以在一个类中我默认的根做了以下操作:
public class FooHandler: IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
// do stuff, validate?
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.AddHeader("Content-Disposition", string.Format("filename={0}", url));
HttpContext.Current.Response.AddHeader("Content-Type", "fooMimeType");
HttpContext.Current.Response.WriteFile(url);
HttpContext.Current.Response.End();
}
public bool IsReusable
{
get { return false; }
}
}
是否可以使用wcf .svc请求做这种事情?我不确定它是否完全一样,因为我没有必要为文件提供响应,我想拦截并代理响应。
或者是一个更好的方式来实现一个服务行为,我的所需的预服务逻辑?
marc_s,谢谢!我认为这可能工作 – devshorts