c# - HttpHandler 和 XML 文件

标签 c# asp.net http httphandler

我想拦截任何向服务器发出的 XML 文件请求。我认为使用 HttpHandler 可能是可行的。它经过编码并且可以工作......仅在本地主机上(?!?!)。

那么,为什么它只在本地主机上工作?这是我的 web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <httpHandlers>
      <add verb="*" path="*.xml" type="FooBar.XmlHandler, FooBar" />
    </httpHandlers>
  </system.web>
</configuration>

这是我的 C#:

namespace FooBar
{
    public class XmlHandler : IHttpHandler
    {
        public bool IsReusable
        {
            get { return false; }
        }

        public void ProcessRequest(HttpContext context)
        {
            HttpResponse Response = context.Response;
            Response.Write(xmlString);
        }
    }
}

正如您可能已经看到的,我直接在响应中写入 xmlString,这只是暂时的,因为我仍然想知道如何提供文件名(这是第二个问题;))

应该在响应中写入的只是 flash 应用程序将检索的 xml 文件名。

谢谢

详情:
在 Windows Server 2003 上使用 IIS 6.0。

编辑:
当从另一台计算机调用该页面时,它似乎没有到达 HttpHandler。但是,IIS 的映射已正确完成。

最佳答案

目前我手头没有 IIS6 服务器,但需要两个步骤:

第一步并不明显,因为 Visual Studio 集成 Web 服务器正在将所有请求映射到 ASP.NET。

其他资源:

关于c# - HttpHandler 和 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2630049/

相关文章:

java - "PUT"请求未处理

http - 为什么响应 304 没有 Content-Type header ?

c# - 使用任意数字键和对象数组值解析嵌套字典

c# - 为什么 Visual Studio 不强制执行 try-catch-block 实现?

c# - 如何从代码隐藏中添加输入和验证控件

HTTP 1.1 请求行

c# - 使用 ASP.Net MVC 2 脚手架创建编辑表单

c# - TeamCity NuGet 安装程序步骤失败

c# - Asp.net Mvc4 GridMvc convert DateTime in columns.Add()

asp.net - 如何以编程方式创建和使用来自 ASP.NET 的复选框列表?