HTTP运行时的简单应用
2009-11-11 15:55
489 查看
所谓HTTP运行时,指的是从IIS接受到HTTP请求开始,一直到将响应结果反馈给用户为止的这段工作过程。
假设一个网站正在维护建设中,访问任何一个页面都提示“对不起,网站正在维护,暂停访问!”。该如何去做呢?
HTTP运行时的结构图就不画了,HttpModule是HTTP请求经过的第一道“容器”,发生在HttpHandle之前。也就是说,Page类还没有起作用,HttpModule就开始工作了。利用这个特点,常常将HttpModule作为HTTP请求的“过滤器”或“附加信息器”,在到达Page类之前,先对HTTP请求做一些“预处理”。
HttpModule 的使用方法如下:
(1)、定义一个从IHttpModule接口继承的类。
(2)、在config文件中写好相关配置,以指示.NET来调用这个类。
其中,IHttpModule接口中有2个方法,如下:
void Dispose();//做清理工作的
void Init(HttpApplication context);//使用HttpModule的关键,提供了HttpApplication对象的实例
接下来就是实现上面的提示信息:
(1)、在App_Code文件夹下建立一个BreakModule.cs的类
namespace MySpace.Module
{
public class BreakModule:IHttpModule
{
public void Dispose()
{
}
public void Init(HttpApplication application)
{
application.BeginRequest += new EventHandler(application_BeginRequest);
}
public void application_BeginRequest(object sender,EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
application.CompleteRequest();
application.Context.Response.Write("对不起,网站正在维护中,暂停访问!");
}
}
}
(2)、在Web.config文件中配置如下节:
....
<system.web>
<httpModules>
<add name="BreakModule" type="MySpace.Module.BreakModule"/>
</httpModules>
</system.web>
...
(3)、经过如上配置以后,浏览器打开任何一个页面都会提示这样的信息提示:对不起,网站正在维护中,暂停访问!
还有一种方法就是在Global.asax中的Application_BeginRequest(object sender,EventArgs e)方法中写上如下代码即可:
void Application_BeginRequest(object sender,EventArgs e)
{
HttpApplication aplication = ()sender;
application.Context.Response.Write("对不起,网站正在维护中,暂停访问!");
application.Context.Response.End();
}
假设一个网站正在维护建设中,访问任何一个页面都提示“对不起,网站正在维护,暂停访问!”。该如何去做呢?
HTTP运行时的结构图就不画了,HttpModule是HTTP请求经过的第一道“容器”,发生在HttpHandle之前。也就是说,Page类还没有起作用,HttpModule就开始工作了。利用这个特点,常常将HttpModule作为HTTP请求的“过滤器”或“附加信息器”,在到达Page类之前,先对HTTP请求做一些“预处理”。
HttpModule 的使用方法如下:
(1)、定义一个从IHttpModule接口继承的类。
(2)、在config文件中写好相关配置,以指示.NET来调用这个类。
其中,IHttpModule接口中有2个方法,如下:
void Dispose();//做清理工作的
void Init(HttpApplication context);//使用HttpModule的关键,提供了HttpApplication对象的实例
接下来就是实现上面的提示信息:
(1)、在App_Code文件夹下建立一个BreakModule.cs的类
namespace MySpace.Module
{
public class BreakModule:IHttpModule
{
public void Dispose()
{
}
public void Init(HttpApplication application)
{
application.BeginRequest += new EventHandler(application_BeginRequest);
}
public void application_BeginRequest(object sender,EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
application.CompleteRequest();
application.Context.Response.Write("对不起,网站正在维护中,暂停访问!");
}
}
}
(2)、在Web.config文件中配置如下节:
....
<system.web>
<httpModules>
<add name="BreakModule" type="MySpace.Module.BreakModule"/>
</httpModules>
</system.web>
...
(3)、经过如上配置以后,浏览器打开任何一个页面都会提示这样的信息提示:对不起,网站正在维护中,暂停访问!
还有一种方法就是在Global.asax中的Application_BeginRequest(object sender,EventArgs e)方法中写上如下代码即可:
void Application_BeginRequest(object sender,EventArgs e)
{
HttpApplication aplication = ()sender;
application.Context.Response.Write("对不起,网站正在维护中,暂停访问!");
application.Context.Response.End();
}
相关文章推荐
- springboot的简单应用和在linux下运行
- 简单工具让PC也能运行Android应用--真是牛啊
- 一个简单的httpModule应用
- ASP.NET Cookies简单应用 [ASP.NET | Cookies] 【转:http://www.cnblogs.com/over140/archive/2008/11/19/1336497.html】
- httpModules与httpHandlers简单应用
- 函数的简单应用(原帖地址:http://topic.csdn.net/u/20090317/16/c7f5c2e3-293d-4d67-85be-0a4a17d52855.html)
- XMLHttpRequest 对象的Google Suggest 式简单应用
- QT:HTTP协议简单应用
- 动态测试方法运行时间的工具BTrace的简单应用
- Ajax简单应用示例: XMLHttpRequest对象实例化方式及调用
- 20 --HTTP协议的简单理解及应用
- 使用react-native做一个简单的应用-02项目搭建与运行
- HttpCient简单应用
- 简单的用 Java Socket 编写的 HTTP 服务器应用,帮助学习HTTP协议(支持POST信息打印)
- 计算机网络自顶向下 :应用层(简单概念和http协议相关简单介绍)
- XMLHttpRequest 对象的Google Suggest 式简单应用
- 一个简单地应用--从客户端向服务器发送数据.post,get.httpclientget,httpclinetpost,文件上传.
- 【Cocos2d-x】 HttpClient 网络通信(Http)的简单应用
- 简单的用 Java Socket 编写的 HTTP 服务器应用,帮助学习HTTP协议
- 4 - Swift之2 - 使用xcode7构建一个简单的应用并在IOS9设备上真机运行