【发布时间】:2013-12-28 00:45:09
【问题描述】:
当尝试访问不存在的控制器上的操作时,会在 global.asax 的 Application_OnError 中注册一个 HttpException,并将 Response.StatusCode 设置为 200。
但是,当之后到达 Application_EndRequest 时,Response.StatusCode 会设置为 404。
什么模块负责这个 StatusCode 的变化。一定是有什么东西在分析 HttpException,尽管我无法根据它确定它应该更改为 404 的原因来弄清楚。
编辑:
也许我不清楚。我没有将响应代码设置为 200。这只是我检查过的,它是由其他东西(可能是 MVC)设置的。
【问题讨论】:
-
当实际发生 404 时,为什么要返回 OK?
-
我不想返回 200。我只是对将它设置为 404 / 哪个模块连接来完成它感兴趣。是 MVC 还是别的什么?
标签: asp.net asp.net-mvc asp.net-mvc-4 http-status-code-404