我正在尝试编写一个asp.net httphandler来处理带有IIS的webdav请求。
我正在扩展IHttpHandler接口并实现ProcessRequest。
public class clsMyHandler : IHttpHandler
{
public void ProcessRequest(System.Web.HttpContext context)
{
StreamWriter sw = new StreamWriter(@"C:\requestLog.txt",true);
sw.WriteLine("Got a request at " + DateTime.Now.ToString());
sw.Close();
}
public bool IsReusable
{
get
{
return true;
}
}
}
当我获得给定名称文件的webdav请求时,这是一个简单的处理程序,用于我的测试目的只是登录到文件。我可以看到处理程序映射中列出的处理程序。
这是web.config
<handlers>
<add name="testhandler" verb="*" path="*e.txt" type="MyPipeLine.clsMyHandler, MyPipeLine" />
</handlers>
当请求是来自浏览器的http时,它工作正常。我的处理程序被执行并登录文件。但是当请求是webdav时(我已经启用了带有IIS的webdav并将网站根映射为网络驱动器)编辑模式* e.txt的文件失败,我希望因为我覆盖了webdav处理程序,但我没有看到它登录我的文件。
我不确定是否有一个服务器日志,我可以检查以获得有关是否调用该处理程序以及处理程序中是否存在错误的线索。我是新手。
我没有在网上找到关于webdav的httphandlers的很多资料/指南。
感谢任何帮助。