【问题标题】:IIS error page is preventing me finding an error in ASP.NET Web APIIIS 错误页面阻止我在 ASP.NET Web API 中发现错误
【发布时间】:2012-05-11 17:43:12
【问题描述】:

我正在使用 ASP.NET Web API。在某些时候,在执行操作之前抛出异常(可能在控制器的 DI 期间),但我无法追踪它,因为我只是得到一个罐装的 IIS 错误页面。我不知道如何获取异常信息。

我怎样才能得到一些有用信息的回复?

编辑:我已验证自定义 ExceptionFilter 将响应控制器抛出的异常,但不会响应我认为在任何控制器代码执行之前发生的 this 异常。将代码添加到 Global.asax 中的 Application_Error() 也不会响应异常。该框架似乎对此异常视而不见。所以这很好。

【问题讨论】:

  • 谢谢,我更正了。我的意思是我得到了默认的 IIS7.5 错误页面,没有关于异常的详细信息。

标签: asp.net .net exception-handling asp.net-web-api


【解决方案1】:

在应用程序日志中检查服务器上的 windows 事件日志。

【讨论】:

  • 真的,我希望得到一些有用的东西作为响应 - 例如,带有异常详细信息的 HTML 页面。
【解决方案2】:

您知道如何配置(或关闭)custom errors 吗?

【讨论】:

  • 我在web.config的<system.web>节点中添加了<customErrors mode="Off"></customErrors>,但是没有用。
  • @David:对不起,你已经添加了,但是.. 什么?
【解决方案3】:

你试过添加这个

<system.webServer>
    <httpErrors existingResponse="PassThrough" />
</system.webServer>

在配置文件中的配置节点下。它将通知 IIS7.5 忽略 IIS 设置并将错误传递给站点。

【讨论】:

  • 有趣的建议,谢谢。这可以防止 IIS 构建错误页面。现在我只得到一个空的 500 响应!我仍然没有办法捕获异常并检查它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-26
  • 2014-12-29
  • 2020-10-26
  • 1970-01-01
  • 2017-02-24
相关资源
最近更新 更多