我正在创建一个http模块,我想检查一个请求是否来自经过身份验证的用户,如果不是,则重定向到登录页面.
我在web.config文件中注册了该模块,并且我有以下代码抛出异常:
public class IsAuthModule : IHttpModule
{
public void Dispose() { }
public void Init(HttpApplication TheApp)
{
var TheRequest = TheApp.Request;
}
}
Run Code Online (Sandbox Code Playgroud)
它抛出一个异常,说"在这种情况下请求不可用"
我究竟做错了什么?
在Init阶段,您没有正在进行的请求.您必须订阅事件以开始请求:
public void Init(HttpApplication TheApp)
{
TheApp.BeginRequest += Application_BeginRequest;
// End Request handler
//application.EndRequest += Application_EndRequest;
}
private void Application_BeginRequest(Object source, EventArgs e)
{
// do something
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1551 次 |
| 最近记录: |