asp.net-mvc-3 - 在 ASP.NET MVC 3 中注册 HttpHandler 并收到 404 Not Found 错误

标签 asp.net-mvc-3 web-config httphandler

我出于测试目的制作了一个自定义处理程序,如下所示:

namespace MVCHttpHandlerProject
{
    public class SomeHandler : IHttpHandler
    {
        public bool IsReusable
        {
            get { return true; }
        }

        public void ProcessRequest(HttpContext context)
        {
            context.Response.Write("SomeHandler test");
        }
    }
}

然后我将下一行添加到我的 web.config 中:

<httpHandlers> <add path="SomeHandler.axd" verb="*" type="MVCHttpHandlerProject.SomeHandler, MVCHttpHandlerProject" /></httpHandlers>

以及<system.webServer>

<handlers> <add path="SomeHandler.axd" verb="*" type="MVCHttpHandlerProject.SomeHandler, MVCHttpHandlerProject" name="SomeHandler.axd"/> </handlers>

我的 Global.asax.cs 未修改,看起来与使用 routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 生成时一模一样。在 RegisterRoutes 方法中。

不过,当我尝试访问“http://localhost/Home/SomeHandler.axd”时,会出现“找不到资源”错误。为什么?我错过了什么?我该如何解决这个问题?

最佳答案

您应该请求http://localhost/SomeHandler.axd而不是http://localhost/Home/SomeHandler.axd。没有

关于asp.net-mvc-3 - 在 ASP.NET MVC 3 中注册 HttpHandler 并收到 404 Not Found 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12525488/

相关文章:

c# - 利用浏览器缓存不缓存 Javascript 和 CSS 文件

asp.net - ASP.NET 中的 session 超时限制?

asp.net - HTTP 模块和 HTTP 处理程序

javascript - 如何在 HttpHandler ProcessRequest 中获取字符串数组值?

c# - 带有浏览器界面的长进程

c# - 回发时输入文本返回 NULL?

c# - 递归查询 LDAP 组成员资格

c# - 在web.config中获取HTTPModule自身的参数?

java - 如何从 HttpServerExchange 获取请求正文?

c# - 如何检测我的页面是否是回发的结果