HttpModule用户的验证
来源:互联网 发布:9月出口数据 编辑:程序博客网 时间:2024/06/06 12:25
HttpModule是向实现类提供模块初始化和处置事件。当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于HTTP请求来讲,HttpModule是一个HTTP请求的“必经之 路”,所以可以在这个HTTP请求传递到真正的请求处理中心(HttpHandler)之前附加一些需要的信息在这个HTTP请求信息之上,或者针对截获 的这个HTTP请求信息作一些额外的工作,或者在某些情况下干脆终止满足一些条件的HTTP请求,从而可以起到一个Filter过滤器的作用。
1.首先你要实现IHttpModule接口这个接口只有两个方法,一个是Init方法一个Dispose方法.
2.在Init方法里边注册事件:
1 public void Init(HttpApplication context)2 {3 context.AcquireRequestState+=new EventHandler(OnRequest);4 5 }
3.写注册事件的方法:
1 public void OnRequest(object source, EventArgs e) 2 { 3 4 HttpApplication application = source as HttpApplication;//得到Application 5 HttpContext context = application.Context;//得到请求上下文. 6 Uri url = context.Request.Url;//得到当前请求的URL 7 8 //请求Admin目录下的文件时,需要进行身份验证,只有管理员才能访问. 9 if (url.AbsolutePath.ToLower().StartsWith("/admin"))10 {11 //adminlogin.aspx和logout.aspx不需要身份验证12 if (url.AbsolutePath.ToLower().EndsWith("adminlogin.aspx"))13 {14 return;15 }16 if (url.AbsolutePath.ToLower().EndsWith("loginout.aspx"))17 {18 return;19 }20 if (HttpContext.Current.Session["Name"] == null)21 {22 HttpContext.Current.Response.Redirect("adminlogin.aspx");23 }24 25 26 }27 }
4.配置web.config:
1 <httpModules>2 <add name="CheckAdminModule" type="Web.Common.CheckAdminModule"/>3 </httpModules>
这个方法很简单但是很使用。主要原理是在HttpModule里边进行了admin文件的过滤,在http访问过来的时候用HttpModule进行对session的验证如果session存在则通过,如果不存在侧直接跳转到登录页面。
程序中实现的方法有很多中。多总结一些对于提升自己的能力有很大的帮助。
<script type="text/javascript"><!--google_ad_client = "ca-pub-1944176156128447";/* cnblogs 首页横幅 */google_ad_slot = "5419468456";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- HttpModule用户的验证
- 使用httpmodule验证用户登录
- HttpModule实现用户身份验证
- 使用HttpModule进行权限验证
- ajax的验证用户
- HttpModule的移除
- HttpModule的移除
- HttpModule的实现
- HttpModule的认识
- HttpModule的Init事件
- HttpModule的认识
- HttpModule的认识
- HttpModule的认识
- HttpModule的认识
- HttpModule的认识
- HttpModule的认识
- HttpModule的认识
- 对HttpModule的理解
- 写日志文件
- andriod开发1
- PeopleSoft 服务器管理 - 通过脚本启动/停止服务器
- C#获取驱动器盘符
- regionMatches这个JAVA方法是怎么用的?
- HttpModule用户的验证
- Windows API一日一练(1)第一个应用程序
- ASP.NET基本的增删改查
- 加载和保存站点值到配置文件
- 关闭一个进程
- sa12***161 Linux操作系统是如何工作的?破解操作系统的奥秘
- qt5 --QWidget类学习笔记
- 给分支负责人的管理建议
- JDBC常用接口