HttpModel 和 HttpHandle
2016-01-26 17:07
309 查看
页面的请求过程:
HttpRequest->
inetinfo.exe->
aspnet_isapi.dll->
Http pipeline(命名管道)->
aspnet_wp.exe->
HttpRuntime->
HttpApplication Factory->HttpApplication->
HttpModule->
HttpHandler Factory->HttpHandler->
HttpHandler.ProcessRequest()
当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于HTTP请求来讲,HttpModule是一个HTTP请求的“必经之路”,所以可以在这个HTTP请求传递到真正的请求处理中心(HttpHandler)之前附加一些需要的信息在这个HTTP请求信息之上,或者针对截获的这个HTTP请求信息作一些额外的工作,或者在某些情况下干脆终止满足一些条件的HTTP请求,从而可以起到一个Filter过滤器的作用.
HttpModule 事件
HttpRequest->
inetinfo.exe->
aspnet_isapi.dll->
Http pipeline(命名管道)->
aspnet_wp.exe->
HttpRuntime->
HttpApplication Factory->HttpApplication->
HttpModule->
HttpHandler Factory->HttpHandler->
HttpHandler.ProcessRequest()
当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于HTTP请求来讲,HttpModule是一个HTTP请求的“必经之路”,所以可以在这个HTTP请求传递到真正的请求处理中心(HttpHandler)之前附加一些需要的信息在这个HTTP请求信息之上,或者针对截获的这个HTTP请求信息作一些额外的工作,或者在某些情况下干脆终止满足一些条件的HTTP请求,从而可以起到一个Filter过滤器的作用.
HttpModule 事件
BeginRequest | 指示请求处理开始 |
AuthenticateRequest | 封装请求身份验证过程 |
AuthorizeRequest | 封装检查是否能利用以前缓存的输出页面处理请求的过程 |
ResolveRequestCache | 从缓存中得到相应时候触发 |
AcquireRequestState | 加载初始化Session时候触发 |
PreRequestHandlerExecute | 在Http请求进入HttpHandler之前触发 |
PostRequestHandlerExecute | 在Http请求进入HttpHandler之后触发 |
ReleaseRequestState | 存储Session状态时候触发 |
UpdateRequestCache | 更新缓存信息时触发 |
EndRequest | 在Http请求处理完成的时候触发 |
PreSendRequestHenaders | 在向客户端发送Header之前触发 |
PreSendRequestConternt | 在向客户端发送内容之前触发 |
相关文章推荐
- Android网络:封装自用网络层的心得体会
- ios tcp multipath
- Hbulider中,QQ分享到好友,总是提示,分享失败,请检查网络并重试
- TCP滑动窗口机制
- MFC实现下载网络图片缓存到本地
- openstack配置注意事项(主要是网络相关)
- 处理umeditor编辑器给a标签自动添加http://办法
- Apache httpd.conf配置详解
- 重启网络,报以下错误:Error: Connection activation failed: The connection is not for this device.
- android 网络请求遇到的坑:connect failed: EHOSTUNREACH (No route to host)
- 次成分分析MCA
- Linux下Apache配置SSL支持https
- 主成分分析PCA
- SVM支持向量机
- http://androidsource.top/code/source
- Widrow-Hoff Learning
- 感知机学习
- Hebb学习规则
- MyEclipse 项目部署到tomcat时出现错误之——deploy______http://yang8820.iteye.com/blog/1654466
- java网络编程(二)复用Socket连接以及使用多线程完成多个客户端的连接