将所有资源(.aspx,.html,.jpg等)的所有请求(GET,POST等)记录到asp.net中的db / file

时间:2011-02-04 09:59:54

标签: asp.net logging httphandler httpmodule

是否可以将所有资源(.aspx,.html,.pdf等)的所有请求(GET,POST等)记录到ASP.NET 4应用程序中的db或文件中?

目前我们使用以下内容:

   public class RequestLogger : IHttpModule
   {
      public void Dispose()
      {

      }
      public void Init(HttpApplication context)
      {
         context.PreRequestHandlerExecute += new EventHandler(mPreRequestHandlerExecute);
      }

      void mPreRequestHandlerExecute(object sender, EventArgs e)
      {
         HttpApplication app = sender as HttpApplication;
         StreamReader reader = new StreamReader(app.Request.InputStream);
         System.Diagnostics.Debug.WriteLine(reader.ReadToEnd());
      }
   }

此记录器可用,但仅适用于POST方法,在其他情况下(GET),InputStream长度为0。

1 个答案:

答案 0 :(得分:0)

获取请求不会包含除url之外的任何信息。