IHttpModule过滤htm文件

本文探讨了IHttpModule在处理htm文件时的过滤机制,特别是在第二次提交时的行为。为了解决只过滤一次的问题,文章提出了使用页面跳转的方法,并对比了在处理aspx页面时的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IHttpModule过滤htm文件时会出现,只过滤一遍的情况,当第二次提交时会不会进行过滤,直接出现静态画面,解决的办法是在IHttpModule过滤时,过滤结束时要用命令让页面跳转.但是aspx页面就不需要用命令跳转,程序会自动执行下去.如果用命令显示跳转的话,aspx页面的控件事件就不会触发了,那样只能显示动态页面,而无法执行页面的代码了.

 public void Init(HttpApplication application){ application.AcquireRequestState += (new EventHandler(this.Application_AcquireRequestState)); } private void Application_AcquireRequestState(Object source, EventArgs e)    { HttpApplication Application = (HttpApplication)source;        //User user=Application.Context.Sesseion["User"]  //获取User        string url = Application.Context.Request.Path;        HttpResponse response = Application.Context.Response;   if(url.IndexOf("abc") > -1) ){ if(url.IndexOf("abc") > -1) { response.write("this is html"); response.Redirect(url); }} else {  if(url.IndexOf("abc") > -1) {response.Redirect(url); } }

不知道理解的是否有问题,呵呵.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值