自定义C#HttpModule无限重定向循环
我正在写一个自定义的c#HttpModule来处理来自所有文件类型的请求。 作为一个简单的概念证明,我已经通过添加对web配置的httpModules部分的引用来设置模块,并且为演示IIS网站添加了对aspnet_isapi.dll的引用的应用程序扩展,以便它目前仅拦截“。 htm“文件
但即使“OnBeginRequest”事件中没有重要代码(下面的代码),它也会导致无限重定向循环。 我在XP上使用IIS 5任何人有任何想法?
到目前为止,我只看到用于ASPX文件的HttpModule示例,但当然可以配置任何文件类型?
#region IHttpModule Members public void Dispose() { } public void Init(HttpApplication context) { context.BeginRequest += new EventHandler(OnBeginRequest); } /// /// /// /// public void OnBeginRequest(Object s, EventArgs e) { HttpApplication context = s as HttpApplication; Uri currentURL = context.Request.Url; string pageName = currentURL.Segments.Last().ToLower(); } #endregion
好。 问题实际上是在HttpModule本身。
看起来您必须使用HttpApplication上下文才能在客户端上呈现它。
例如,在执行完所有自定义逻辑之后,您需要写入上下文:
context.Response.Write("/n/r"); //or context.Response.Redirect("test.htm");
然后,所有东西都按照您的预期呈现
链接地址: http://www.djcxy.com/p/7603.html上一篇: Custom C# HttpModule Infinite Redirect Loop
下一篇: How can I modify a POST request using a custom IHttpModule and an HttpRequest filter?